﻿!function (e) {
    function t(n) {
        if (i[n]) return i[n].exports;
        var r = i[n] = {i: n, l: !1, exports: {}};
        return e[n].call(r.exports, r, r.exports, t), r.l = !0, r.exports;
    }

    var n = window.webpackJsonp;
    window.webpackJsonp = function (i, o, a) {
        for (var s, c, u, l = 0, f = []; l < i.length; l++) c = i[l], r[c] && f.push(r[c][0]), r[c] = 0;
        for (s in o) Object.prototype.hasOwnProperty.call(o, s) && (e[s] = o[s]);
        for (n && n(i, o, a); f.length;) f.shift()();
        if (a) for (l = 0; l < a.length; l++) u = t(t.s = a[l]);
        return u;
    };
    var i = {}, r = {79: 0};
    t.e = function (e) {
        function n() {
            s.onerror = s.onload = null, clearTimeout(c);
            var t = r[e];
            0 !== t && (t && t[1](new Error('Loading chunk ' + e + ' failed.')), r[e] = void 0);
        }

        var i = r[e];
        if (0 === i) return new Promise(function (e) {
            e();
        });
        if (i) return i[2];
        var o = new Promise(function (t, n) {
            i = r[e] = [t, n];
        });
        i[2] = o;
        var a = document.getElementsByTagName('head')[0], s = document.createElement('script');
        s.type = 'text/javascript', s.charset = 'utf-8', s.async = !0, s.timeout = 12e4, t.nc && s.setAttribute('nonce', t.nc), s.src = t.p + 'js/' + e + '.js';
        var c = setTimeout(n, 12e4);
        return s.onerror = s.onload = n, a.appendChild(s), o;
    }, t.m = e, t.c = i, t.i = function (e) {
        return e;
    }, t.d = function (e, n, i) {
        t.o(e, n) || Object.defineProperty(e, n, {configurable: !1, enumerable: !0, get: i});
    }, t.n = function (e) {
        var n = e && e.__esModule ? function () {
            return e.default;
        } : function () {
            return e;
        };
        return t.d(n, 'a', n), n;
    }, t.o = function (e, t) {
        return Object.prototype.hasOwnProperty.call(e, t);
    }, t.p = '//i.qfangimg.com/resource/qfang-mobile/', t.oe = function (e) {
        throw console.error(e), e;
    };
}({
    0: function (e, t, n) {
        var i, r;
        /*! jQuery v3.2.1 | (c) JS Foundation and other contributors | jquery.org/license */
        !function (t, n) {
            'use strict';
            'object' == typeof e && 'object' == typeof e.exports ? e.exports = t.document ? n(t, !0) : function (e) {
                if (!e.document) throw new Error('jQuery requires a window with a document');
                return n(e);
            } : n(t);
        }('undefined' != typeof window ? window : this, function (o, a) {
            'use strict';

            function s(e, t) {
                t = t || se;
                var n = t.createElement('script');
                n.text = e, t.head.appendChild(n).parentNode.removeChild(n);
            }

            function c(e) {
                var t = !!e && 'length' in e && e.length, n = be.type(e);
                return 'function' !== n && !be.isWindow(e) && ('array' === n || 0 === t || 'number' == typeof t && t > 0 && t - 1 in e);
            }

            function u(e, t) {
                return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase();
            }

            function l(e, t, n) {
                return be.isFunction(t) ? be.grep(e, function (e, i) {
                    return !!t.call(e, i, e) !== n;
                }) : t.nodeType ? be.grep(e, function (e) {
                    return e === t !== n;
                }) : 'string' != typeof t ? be.grep(e, function (e) {
                    return pe.call(t, e) > -1 !== n;
                }) : Ae.test(t) ? be.filter(t, e, n) : (t = be.filter(t, e), be.grep(e, function (e) {
                    return pe.call(t, e) > -1 !== n && 1 === e.nodeType;
                }));
            }

            function f(e, t) {
                for (; (e = e[t]) && 1 !== e.nodeType;) ;
                return e;
            }

            function p(e) {
                var t = {};
                return be.each(e.match(He) || [], function (e, n) {
                    t[n] = !0;
                }), t;
            }

            function d(e) {
                return e;
            }

            function h(e) {
                throw e;
            }

            function g(e, t, n, i) {
                var r;
                try {
                    e && be.isFunction(r = e.promise) ? r.call(e).done(t).fail(n) : e && be.isFunction(r = e.then) ? r.call(e, t, n) : t.apply(void 0, [e].slice(i));
                } catch (e) {
                    n.apply(void 0, [e]);
                }
            }

            function v() {
                se.removeEventListener('DOMContentLoaded', v), o.removeEventListener('load', v), be.ready();
            }

            function m() {
                this.expando = be.expando + m.uid++;
            }

            function y(e) {
                return 'true' === e || 'false' !== e && ('null' === e ? null : e === +e + '' ? +e : Be.test(e) ? JSON.parse(e) : e);
            }

            function x(e, t, n) {
                var i;
                if (void 0 === n && 1 === e.nodeType) if (i = 'data-' + t.replace(We, '-$&').toLowerCase(), 'string' == typeof(n = e.getAttribute(i))) {
                    try {
                        n = y(n);
                    } catch (e) {
                    }
                    ze.set(e, t, n);
                } else n = void 0;
                return n;
            }

            function b(e, t, n, i) {
                var r, o = 1, a = 20, s = i ? function () {
                        return i.cur();
                    } : function () {
                        return be.css(e, t, '');
                    }, c = s(), u = n && n[3] || (be.cssNumber[t] ? '' : 'px'),
                    l = (be.cssNumber[t] || 'px' !== u && +c) && _e.exec(be.css(e, t));
                if (l && l[3] !== u) {
                    u = u || l[3], n = n || [], l = +c || 1;
                    do {
                        o = o || '.5', l /= o, be.style(e, t, l + u);
                    } while (o !== (o = s() / c) && 1 !== o && --a);
                }
                return n && (l = +l || +c || 0, r = n[1] ? l + (n[1] + 1) * n[2] : +n[2], i && (i.unit = u, i.start = l, i.end = r)), r;
            }

            function w(e) {
                var t, n = e.ownerDocument, i = e.nodeName, r = Ve[i];
                return r || (t = n.body.appendChild(n.createElement(i)), r = be.css(t, 'display'), t.parentNode.removeChild(t), 'none' === r && (r = 'block'), Ve[i] = r, r);
            }

            function T(e, t) {
                for (var n, i, r = [], o = 0, a = e.length; o < a; o++) i = e[o], i.style && (n = i.style.display, t ? ('none' === n && (r[o] = Ie.get(i, 'display') || null, r[o] || (i.style.display = '')), '' === i.style.display && Ye(i) && (r[o] = w(i))) : 'none' !== n && (r[o] = 'none', Ie.set(i, 'display', n)));
                for (o = 0; o < a; o++) null != r[o] && (e[o].style.display = r[o]);
                return e;
            }

            function C(e, t) {
                var n;
                return n = void 0 !== e.getElementsByTagName ? e.getElementsByTagName(t || '*') : void 0 !== e.querySelectorAll ? e.querySelectorAll(t || '*') : [], void 0 === t || t && u(e, t) ? be.merge([e], n) : n;
            }

            function k(e, t) {
                for (var n = 0, i = e.length; n < i; n++) Ie.set(e[n], 'globalEval', !t || Ie.get(t[n], 'globalEval'));
            }

            function E(e, t, n, i, r) {
                for (var o, a, s, c, u, l, f = t.createDocumentFragment(), p = [], d = 0, h = e.length; d < h; d++) if ((o = e[d]) || 0 === o) if ('object' === be.type(o)) be.merge(p, o.nodeType ? [o] : o); else if (et.test(o)) {
                    for (a = a || f.appendChild(t.createElement('div')), s = (Ke.exec(o) || ['', ''])[1].toLowerCase(), c = Ze[s] || Ze._default, a.innerHTML = c[1] + be.htmlPrefilter(o) + c[2], l = c[0]; l--;) a = a.lastChild;
                    be.merge(p, a.childNodes), a = f.firstChild, a.textContent = '';
                } else p.push(t.createTextNode(o));
                for (f.textContent = '', d = 0; o = p[d++];) if (i && be.inArray(o, i) > -1) r && r.push(o); else if (u = be.contains(o.ownerDocument, o), a = C(f.appendChild(o), 'script'), u && k(a), n) for (l = 0; o = a[l++];) Qe.test(o.type || '') && n.push(o);
                return f;
            }

            function j() {
                return !0;
            }

            function N() {
                return !1;
            }

            function S() {
                try {
                    return se.activeElement;
                } catch (e) {
                }
            }

            function D(e, t, n, i, r, o) {
                var a, s;
                if ('object' == typeof t) {
                    'string' != typeof n && (i = i || n, n = void 0);
                    for (s in t) D(e, s, n, i, t[s], o);
                    return e;
                }
                if (null == i && null == r ? (r = n, i = n = void 0) : null == r && ('string' == typeof n ? (r = i, i = void 0) : (r = i, i = n, n = void 0)), !1 === r) r = N; else if (!r) return e;
                return 1 === o && (a = r, r = function (e) {
                    return be().off(e), a.apply(this, arguments);
                }, r.guid = a.guid || (a.guid = be.guid++)), e.each(function () {
                    be.event.add(this, t, r, i, n);
                });
            }

            function A(e, t) {
                return u(e, 'table') && u(11 !== t.nodeType ? t : t.firstChild, 'tr') ? be('>tbody', e)[0] || e : e;
            }

            function L(e) {
                return e.type = (null !== e.getAttribute('type')) + '/' + e.type, e;
            }

            function q(e) {
                var t = ct.exec(e.type);
                return t ? e.type = t[1] : e.removeAttribute('type'), e;
            }

            function O(e, t) {
                var n, i, r, o, a, s, c, u;
                if (1 === t.nodeType) {
                    if (Ie.hasData(e) && (o = Ie.access(e), a = Ie.set(t, o), u = o.events)) {
                        delete a.handle, a.events = {};
                        for (r in u) for (n = 0, i = u[r].length; n < i; n++) be.event.add(t, r, u[r][n]);
                    }
                    ze.hasData(e) && (s = ze.access(e), c = be.extend({}, s), ze.set(t, c));
                }
            }

            function P(e, t) {
                var n = t.nodeName.toLowerCase();
                'input' === n && Je.test(e.type) ? t.checked = e.checked : 'input' !== n && 'textarea' !== n || (t.defaultValue = e.defaultValue);
            }

            function H(e, t, n, i) {
                t = le.apply([], t);
                var r, o, a, c, u, l, f = 0, p = e.length, d = p - 1, h = t[0], g = be.isFunction(h);
                if (g || p > 1 && 'string' == typeof h && !ye.checkClone && st.test(h)) return e.each(function (r) {
                    var o = e.eq(r);
                    g && (t[0] = h.call(this, r, o.html())), H(o, t, n, i);
                });
                if (p && (r = E(t, e[0].ownerDocument, !1, e, i), o = r.firstChild, 1 === r.childNodes.length && (r = o), o || i)) {
                    for (a = be.map(C(r, 'script'), L), c = a.length; f < p; f++) u = r, f !== d && (u = be.clone(u, !0, !0), c && be.merge(a, C(u, 'script'))), n.call(e[f], u, f);
                    if (c) for (l = a[a.length - 1].ownerDocument, be.map(a, q), f = 0; f < c; f++) u = a[f], Qe.test(u.type || '') && !Ie.access(u, 'globalEval') && be.contains(l, u) && (u.src ? be._evalUrl && be._evalUrl(u.src) : s(u.textContent.replace(ut, ''), l));
                }
                return e;
            }

            function F(e, t, n) {
                for (var i, r = t ? be.filter(t, e) : e, o = 0; null != (i = r[o]); o++) n || 1 !== i.nodeType || be.cleanData(C(i)), i.parentNode && (n && be.contains(i.ownerDocument, i) && k(C(i, 'script')), i.parentNode.removeChild(i));
                return e;
            }

            function $(e, t, n) {
                var i, r, o, a, s = e.style;
                return n = n || pt(e), n && (a = n.getPropertyValue(t) || n[t], '' !== a || be.contains(e.ownerDocument, e) || (a = be.style(e, t)), !ye.pixelMarginRight() && ft.test(a) && lt.test(t) && (i = s.width, r = s.minWidth, o = s.maxWidth, s.minWidth = s.maxWidth = s.width = a, a = n.width, s.width = i, s.minWidth = r, s.maxWidth = o)), void 0 !== a ? a + '' : a;
            }

            function M(e, t) {
                return {
                    get: function () {
                        return e() ? void delete this.get : (this.get = t).apply(this, arguments);
                    }
                };
            }

            function R(e) {
                if (e in yt) return e;
                for (var t = e[0].toUpperCase() + e.slice(1), n = mt.length; n--;) if ((e = mt[n] + t) in yt) return e;
            }

            function I(e) {
                var t = be.cssProps[e];
                return t || (t = be.cssProps[e] = R(e) || e), t;
            }

            function z(e, t, n) {
                var i = _e.exec(t);
                return i ? Math.max(0, i[2] - (n || 0)) + (i[3] || 'px') : t;
            }

            function B(e, t, n, i, r) {
                var o, a = 0;
                for (o = n === (i ? 'border' : 'content') ? 4 : 'width' === t ? 1 : 0; o < 4; o += 2) 'margin' === n && (a += be.css(e, n + Xe[o], !0, r)), i ? ('content' === n && (a -= be.css(e, 'padding' + Xe[o], !0, r)), 'margin' !== n && (a -= be.css(e, 'border' + Xe[o] + 'Width', !0, r))) : (a += be.css(e, 'padding' + Xe[o], !0, r), 'padding' !== n && (a += be.css(e, 'border' + Xe[o] + 'Width', !0, r)));
                return a;
            }

            function W(e, t, n) {
                var i, r = pt(e), o = $(e, t, r), a = 'border-box' === be.css(e, 'boxSizing', !1, r);
                return ft.test(o) ? o : (i = a && (ye.boxSizingReliable() || o === e.style[t]), 'auto' === o && (o = e['offset' + t[0].toUpperCase() + t.slice(1)]), (o = parseFloat(o) || 0) + B(e, t, n || (a ? 'border' : 'content'), i, r) + 'px');
            }

            function U(e, t, n, i, r) {
                return new U.prototype.init(e, t, n, i, r);
            }

            function _() {
                bt && (!1 === se.hidden && o.requestAnimationFrame ? o.requestAnimationFrame(_) : o.setTimeout(_, be.fx.interval), be.fx.tick());
            }

            function X() {
                return o.setTimeout(function () {
                    xt = void 0;
                }), xt = be.now();
            }

            function Y(e, t) {
                var n, i = 0, r = {height: e};
                for (t = t ? 1 : 0; i < 4; i += 2 - t) n = Xe[i], r['margin' + n] = r['padding' + n] = e;
                return t && (r.opacity = r.width = e), r;
            }

            function G(e, t, n) {
                for (var i, r = (K.tweeners[t] || []).concat(K.tweeners['*']), o = 0, a = r.length; o < a; o++) if (i = r[o].call(n, t, e)) return i;
            }

            function V(e, t, n) {
                var i, r, o, a, s, c, u, l, f = 'width' in t || 'height' in t, p = this, d = {}, h = e.style,
                    g = e.nodeType && Ye(e), v = Ie.get(e, 'fxshow');
                n.queue || (a = be._queueHooks(e, 'fx'), null == a.unqueued && (a.unqueued = 0, s = a.empty.fire, a.empty.fire = function () {
                    a.unqueued || s();
                }), a.unqueued++, p.always(function () {
                    p.always(function () {
                        a.unqueued--, be.queue(e, 'fx').length || a.empty.fire();
                    });
                }));
                for (i in t) if (r = t[i], wt.test(r)) {
                    if (delete t[i], o = o || 'toggle' === r, r === (g ? 'hide' : 'show')) {
                        if ('show' !== r || !v || void 0 === v[i]) continue;
                        g = !0;
                    }
                    d[i] = v && v[i] || be.style(e, i);
                }
                if ((c = !be.isEmptyObject(t)) || !be.isEmptyObject(d)) {
                    f && 1 === e.nodeType && (n.overflow = [h.overflow, h.overflowX, h.overflowY], u = v && v.display, null == u && (u = Ie.get(e, 'display')), l = be.css(e, 'display'), 'none' === l && (u ? l = u : (T([e], !0), u = e.style.display || u, l = be.css(e, 'display'), T([e]))), ('inline' === l || 'inline-block' === l && null != u) && 'none' === be.css(e, 'float') && (c || (p.done(function () {
                        h.display = u;
                    }), null == u && (l = h.display, u = 'none' === l ? '' : l)), h.display = 'inline-block')), n.overflow && (h.overflow = 'hidden', p.always(function () {
                        h.overflow = n.overflow[0], h.overflowX = n.overflow[1], h.overflowY = n.overflow[2];
                    })), c = !1;
                    for (i in d) c || (v ? 'hidden' in v && (g = v.hidden) : v = Ie.access(e, 'fxshow', {display: u}), o && (v.hidden = !g), g && T([e], !0), p.done(function () {
                        g || T([e]), Ie.remove(e, 'fxshow');
                        for (i in d) be.style(e, i, d[i]);
                    })), c = G(g ? v[i] : 0, i, p), i in v || (v[i] = c.start, g && (c.end = c.start, c.start = 0));
                }
            }

            function J(e, t) {
                var n, i, r, o, a;
                for (n in e) if (i = be.camelCase(n), r = t[i], o = e[n], Array.isArray(o) && (r = o[1], o = e[n] = o[0]), n !== i && (e[i] = o, delete e[n]), (a = be.cssHooks[i]) && 'expand' in a) {
                    o = a.expand(o), delete e[i];
                    for (n in o) n in e || (e[n] = o[n], t[n] = r);
                } else t[i] = r;
            }

            function K(e, t, n) {
                var i, r, o = 0, a = K.prefilters.length, s = be.Deferred().always(function () {
                    delete c.elem;
                }), c = function () {
                    if (r) return !1;
                    for (var t = xt || X(), n = Math.max(0, u.startTime + u.duration - t), i = n / u.duration || 0, o = 1 - i, a = 0, c = u.tweens.length; a < c; a++) u.tweens[a].run(o);
                    return s.notifyWith(e, [u, o, n]), o < 1 && c ? n : (c || s.notifyWith(e, [u, 1, 0]), s.resolveWith(e, [u]), !1);
                }, u = s.promise({
                    elem: e,
                    props: be.extend({}, t),
                    opts: be.extend(!0, {specialEasing: {}, easing: be.easing._default}, n),
                    originalProperties: t,
                    originalOptions: n,
                    startTime: xt || X(),
                    duration: n.duration,
                    tweens: [],
                    createTween: function (t, n) {
                        var i = be.Tween(e, u.opts, t, n, u.opts.specialEasing[t] || u.opts.easing);
                        return u.tweens.push(i), i;
                    },
                    stop: function (t) {
                        var n = 0, i = t ? u.tweens.length : 0;
                        if (r) return this;
                        for (r = !0; n < i; n++) u.tweens[n].run(1);
                        return t ? (s.notifyWith(e, [u, 1, 0]), s.resolveWith(e, [u, t])) : s.rejectWith(e, [u, t]), this;
                    }
                }), l = u.props;
                for (J(l, u.opts.specialEasing); o < a; o++) if (i = K.prefilters[o].call(u, e, l, u.opts)) return be.isFunction(i.stop) && (be._queueHooks(u.elem, u.opts.queue).stop = be.proxy(i.stop, i)), i;
                return be.map(l, G, u), be.isFunction(u.opts.start) && u.opts.start.call(e, u), u.progress(u.opts.progress).done(u.opts.done, u.opts.complete).fail(u.opts.fail).always(u.opts.always), be.fx.timer(be.extend(c, {
                    elem: e,
                    anim: u,
                    queue: u.opts.queue
                })), u;
            }

            function Q(e) {
                return (e.match(He) || []).join(' ');
            }

            function Z(e) {
                return e.getAttribute && e.getAttribute('class') || '';
            }

            function ee(e, t, n, i) {
                var r;
                if (Array.isArray(t)) be.each(t, function (t, r) {
                    n || qt.test(e) ? i(e, r) : ee(e + '[' + ('object' == typeof r && null != r ? t : '') + ']', r, n, i);
                }); else if (n || 'object' !== be.type(t)) i(e, t); else for (r in t) ee(e + '[' + r + ']', t[r], n, i);
            }

            function te(e) {
                return function (t, n) {
                    'string' != typeof t && (n = t, t = '*');
                    var i, r = 0, o = t.toLowerCase().match(He) || [];
                    if (be.isFunction(n)) for (; i = o[r++];) '+' === i[0] ? (i = i.slice(1) || '*', (e[i] = e[i] || []).unshift(n)) : (e[i] = e[i] || []).push(n);
                };
            }

            function ne(e, t, n, i) {
                function r(s) {
                    var c;
                    return o[s] = !0, be.each(e[s] || [], function (e, s) {
                        var u = s(t, n, i);
                        return 'string' != typeof u || a || o[u] ? a ? !(c = u) : void 0 : (t.dataTypes.unshift(u), r(u), !1);
                    }), c;
                }

                var o = {}, a = e === Ut;
                return r(t.dataTypes[0]) || !o['*'] && r('*');
            }

            function ie(e, t) {
                var n, i, r = be.ajaxSettings.flatOptions || {};
                for (n in t) void 0 !== t[n] && ((r[n] ? e : i || (i = {}))[n] = t[n]);
                return i && be.extend(!0, e, i), e;
            }

            function re(e, t, n) {
                for (var i, r, o, a, s = e.contents, c = e.dataTypes; "*" === c[0];) c.shift(), void 0 === i && (i = e.mimeType || t.getResponseHeader('Content-Type'));
                if (i) for (r in s) if (s[r] && s[r].test(i)) {
                    c.unshift(r);
                    break;
                }
                if (c[0] in n) o = c[0]; else {
                    for (r in n) {
                        if (!c[0] || e.converters[r + ' ' + c[0]]) {
                            o = r;
                            break;
                        }
                        a || (a = r);
                    }
                    o = o || a;
                }
                if (o) return o !== c[0] && c.unshift(o), n[o];
            }

            function oe(e, t, n, i) {
                var r, o, a, s, c, u = {}, l = e.dataTypes.slice();
                if (l[1]) for (a in e.converters) u[a.toLowerCase()] = e.converters[a];
                for (o = l.shift(); o;) if (e.responseFields[o] && (n[e.responseFields[o]] = t), !c && i && e.dataFilter && (t = e.dataFilter(t, e.dataType)), c = o, o = l.shift()) if ('*' === o) o = c; else if ('*' !== c && c !== o) {
                    if (!(a = u[c + ' ' + o] || u['* ' + o])) for (r in u) if (s = r.split(' '), s[1] === o && (a = u[c + ' ' + s[0]] || u['* ' + s[0]])) {
                        !0 === a ? a = u[r] : !0 !== u[r] && (o = s[0], l.unshift(s[1]));
                        break;
                    }
                    if (!0 !== a) if (a && e.throws) t = a(t); else try {
                        t = a(t);
                    } catch (e) {
                        return {state: 'parsererror', error: a ? e : 'No conversion from ' + c + ' to ' + o};
                    }
                }
                return {state: 'success', data: t};
            }

            var ae = [], se = o.document, ce = Object.getPrototypeOf, ue = ae.slice, le = ae.concat, fe = ae.push,
                pe = ae.indexOf, de = {}, he = de.toString, ge = de.hasOwnProperty, ve = ge.toString,
                me = ve.call(Object), ye = {}, xe = '3.2.1', be = function (e, t) {
                    return new be.fn.init(e, t);
                }, we = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, Te = /^-ms-/, Ce = /-([a-z])/g, ke = function (e, t) {
                    return t.toUpperCase();
                };
            be.fn = be.prototype = {
                jquery: xe, constructor: be, length: 0, toArray: function () {
                    return ue.call(this);
                }, get: function (e) {
                    return null == e ? ue.call(this) : e < 0 ? this[e + this.length] : this[e];
                }, pushStack: function (e) {
                    var t = be.merge(this.constructor(), e);
                    return t.prevObject = this, t;
                }, each: function (e) {
                    return be.each(this, e);
                }, map: function (e) {
                    return this.pushStack(be.map(this, function (t, n) {
                        return e.call(t, n, t);
                    }));
                }, slice: function () {
                    return this.pushStack(ue.apply(this, arguments));
                }, first: function () {
                    return this.eq(0);
                }, last: function () {
                    return this.eq(-1);
                }, eq: function (e) {
                    var t = this.length, n = +e + (e < 0 ? t : 0);
                    return this.pushStack(n >= 0 && n < t ? [this[n]] : []);
                }, end: function () {
                    return this.prevObject || this.constructor();
                }, push: fe, sort: ae.sort, splice: ae.splice
            }, be.extend = be.fn.extend = function () {
                var e, t, n, i, r, o, a = arguments[0] || {}, s = 1, c = arguments.length, u = !1;
                for ('boolean' == typeof a && (u = a, a = arguments[s] || {}, s++), 'object' == typeof a || be.isFunction(a) || (a = {}), s === c && (a = this, s--); s < c; s++) if (null != (e = arguments[s])) for (t in e) n = a[t], i = e[t], a !== i && (u && i && (be.isPlainObject(i) || (r = Array.isArray(i))) ? (r ? (r = !1, o = n && Array.isArray(n) ? n : []) : o = n && be.isPlainObject(n) ? n : {}, a[t] = be.extend(u, o, i)) : void 0 !== i && (a[t] = i));
                return a;
            }, be.extend({
                expando: 'jQuery' + (xe + Math.random()).replace(/\D/g, ''),
                isReady: !0,
                error: function (e) {
                    throw new Error(e);
                },
                noop: function () {
                },
                isFunction: function (e) {
                    return 'function' === be.type(e);
                },
                isWindow: function (e) {
                    return null != e && e === e.window;
                },
                isNumeric: function (e) {
                    var t = be.type(e);
                    return ('number' === t || 'string' === t) && !isNaN(e - parseFloat(e));
                },
                isPlainObject: function (e) {
                    var t, n;
                    return !(!e || '[object Object]' !== he.call(e) || (t = ce(e)) && ('function' != typeof(n = ge.call(t, 'constructor') && t.constructor) || ve.call(n) !== me));
                },
                isEmptyObject: function (e) {
                    var t;
                    for (t in e) return !1;
                    return !0;
                },
                type: function (e) {
                    return null == e ? e + '' : 'object' == typeof e || 'function' == typeof e ? de[he.call(e)] || 'object' : typeof e;
                },
                globalEval: function (e) {
                    s(e);
                },
                camelCase: function (e) {
                    return e.replace(Te, 'ms-').replace(Ce, ke);
                },
                each: function (e, t) {
                    var n, i = 0;
                    if (c(e)) for (n = e.length; i < n && !1 !== t.call(e[i], i, e[i]); i++) ; else for (i in e) if (!1 === t.call(e[i], i, e[i])) break;
                    return e;
                },
                trim: function (e) {
                    return null == e ? '' : (e + '').replace(we, '');
                },
                makeArray: function (e, t) {
                    var n = t || [];
                    return null != e && (c(Object(e)) ? be.merge(n, 'string' == typeof e ? [e] : e) : fe.call(n, e)), n;
                },
                inArray: function (e, t, n) {
                    return null == t ? -1 : pe.call(t, e, n);
                },
                merge: function (e, t) {
                    for (var n = +t.length, i = 0, r = e.length; i < n; i++) e[r++] = t[i];
                    return e.length = r, e;
                },
                grep: function (e, t, n) {
                    for (var i = [], r = 0, o = e.length, a = !n; r < o; r++) !t(e[r], r) !== a && i.push(e[r]);
                    return i;
                },
                map: function (e, t, n) {
                    var i, r, o = 0, a = [];
                    if (c(e)) for (i = e.length; o < i; o++) null != (r = t(e[o], o, n)) && a.push(r); else for (o in e) null != (r = t(e[o], o, n)) && a.push(r);
                    return le.apply([], a);
                },
                guid: 1,
                proxy: function (e, t) {
                    var n, i, r;
                    if ('string' == typeof t && (n = e[t], t = e, e = n), be.isFunction(e)) return i = ue.call(arguments, 2), r = function () {
                        return e.apply(t || this, i.concat(ue.call(arguments)));
                    }, r.guid = e.guid = e.guid || be.guid++, r;
                },
                now: Date.now,
                support: ye
            }), 'function' == typeof Symbol && (be.fn[Symbol.iterator] = ae[Symbol.iterator]), be.each('Boolean Number String Function Array Date RegExp Object Error Symbol'.split(' '), function (e, t) {
                de['[object ' + t + ']'] = t.toLowerCase();
            });
            var Ee = function (e) {
                function t(e, t, n, i) {
                    var r, o, a, s, c, l, p, d = t && t.ownerDocument, h = t ? t.nodeType : 9;
                    if (n = n || [], 'string' != typeof e || !e || 1 !== h && 9 !== h && 11 !== h) return n;
                    if (!i && ((t ? t.ownerDocument || t : R) !== L && A(t), t = t || L, O)) {
                        if (11 !== h && (c = ge.exec(e))) if (r = c[1]) {
                            if (9 === h) {
                                if (!(a = t.getElementById(r))) return n;
                                if (a.id === r) return n.push(a), n;
                            } else if (d && (a = d.getElementById(r)) && $(t, a) && a.id === r) return n.push(a), n;
                        } else {
                            if (c[2]) return J.apply(n, t.getElementsByTagName(e)), n;
                            if ((r = c[3]) && b.getElementsByClassName && t.getElementsByClassName) return J.apply(n, t.getElementsByClassName(r)), n;
                        }
                        if (b.qsa && !U[e + ' '] && (!P || !P.test(e))) {
                            if (1 !== h) d = t, p = e; else if ('object' !== t.nodeName.toLowerCase()) {
                                for ((s = t.getAttribute('id')) ? s = s.replace(xe, be) : t.setAttribute('id', s = M), l = k(e), o = l.length; o--;) l[o] = '#' + s + ' ' + f(l[o]);
                                p = l.join(','), d = ve.test(e) && u(t.parentNode) || t;
                            }
                            if (p) try {
                                return J.apply(n, d.querySelectorAll(p)), n;
                            } catch (e) {
                            } finally {
                                s === M && t.removeAttribute('id');
                            }
                        }
                    }
                    return j(e.replace(oe, '$1'), t, n, i);
                }

                function n() {
                    function e(n, i) {
                        return t.push(n + ' ') > w.cacheLength && delete e[t.shift()], e[n + ' '] = i;
                    }

                    var t = [];
                    return e;
                }

                function i(e) {
                    return e[M] = !0, e;
                }

                function r(e) {
                    var t = L.createElement('fieldset');
                    try {
                        return !!e(t);
                    } catch (e) {
                        return !1;
                    } finally {
                        t.parentNode && t.parentNode.removeChild(t), t = null;
                    }
                }

                function o(e, t) {
                    for (var n = e.split('|'), i = n.length; i--;) w.attrHandle[n[i]] = t;
                }

                function a(e, t) {
                    var n = t && e, i = n && 1 === e.nodeType && 1 === t.nodeType && e.sourceIndex - t.sourceIndex;
                    if (i) return i;
                    if (n) for (; n = n.nextSibling;) if (n === t) return -1;
                    return e ? 1 : -1;
                }

                function s(e) {
                    return function (t) {
                        return 'form' in t ? t.parentNode && !1 === t.disabled ? 'label' in t ? 'label' in t.parentNode ? t.parentNode.disabled === e : t.disabled === e : t.isDisabled === e || t.isDisabled !== !e && Te(t) === e : t.disabled === e : 'label' in t && t.disabled === e;
                    };
                }

                function c(e) {
                    return i(function (t) {
                        return t = +t, i(function (n, i) {
                            for (var r, o = e([], n.length, t), a = o.length; a--;) n[r = o[a]] && (n[r] = !(i[r] = n[r]));
                        });
                    });
                }

                function u(e) {
                    return e && void 0 !== e.getElementsByTagName && e;
                }

                function l() {
                }

                function f(e) {
                    for (var t = 0, n = e.length, i = ''; t < n; t++) i += e[t].value;
                    return i;
                }

                function p(e, t, n) {
                    var i = t.dir, r = t.next, o = r || i, a = n && 'parentNode' === o, s = z++;
                    return t.first ? function (t, n, r) {
                        for (; t = t[i];) if (1 === t.nodeType || a) return e(t, n, r);
                        return !1;
                    } : function (t, n, c) {
                        var u, l, f, p = [I, s];
                        if (c) {
                            for (; t = t[i];) if ((1 === t.nodeType || a) && e(t, n, c)) return !0;
                        } else for (; t = t[i];) if (1 === t.nodeType || a) if (f = t[M] || (t[M] = {}), l = f[t.uniqueID] || (f[t.uniqueID] = {}), r && r === t.nodeName.toLowerCase()) t = t[i] || t; else {
                            if ((u = l[o]) && u[0] === I && u[1] === s) return p[2] = u[2];
                            if (l[o] = p, p[2] = e(t, n, c)) return !0;
                        }
                        return !1;
                    };
                }

                function d(e) {
                    return e.length > 1 ? function (t, n, i) {
                        for (var r = e.length; r--;) if (!e[r](t, n, i)) return !1;
                        return !0;
                    } : e[0];
                }

                function h(e, n, i) {
                    for (var r = 0, o = n.length; r < o; r++) t(e, n[r], i);
                    return i;
                }

                function g(e, t, n, i, r) {
                    for (var o, a = [], s = 0, c = e.length, u = null != t; s < c; s++) (o = e[s]) && (n && !n(o, i, r) || (a.push(o), u && t.push(s)));
                    return a;
                }

                function v(e, t, n, r, o, a) {
                    return r && !r[M] && (r = v(r)), o && !o[M] && (o = v(o, a)), i(function (i, a, s, c) {
                        var u, l, f, p = [], d = [], v = a.length, m = i || h(t || '*', s.nodeType ? [s] : s, []),
                            y = !e || !i && t ? m : g(m, p, e, s, c), x = n ? o || (i ? e : v || r) ? [] : a : y;
                        if (n && n(y, x, s, c), r) for (u = g(x, d), r(u, [], s, c), l = u.length; l--;) (f = u[l]) && (x[d[l]] = !(y[d[l]] = f));
                        if (i) {
                            if (o || e) {
                                if (o) {
                                    for (u = [], l = x.length; l--;) (f = x[l]) && u.push(y[l] = f);
                                    o(null, x = [], u, c);
                                }
                                for (l = x.length; l--;) (f = x[l]) && (u = o ? Q(i, f) : p[l]) > -1 && (i[u] = !(a[u] = f));
                            }
                        } else x = g(x === a ? x.splice(v, x.length) : x), o ? o(null, a, x, c) : J.apply(a, x);
                    });
                }

                function m(e) {
                    for (var t, n, i, r = e.length, o = w.relative[e[0].type], a = o || w.relative[' '], s = o ? 1 : 0, c = p(function (e) {
                        return e === t;
                    }, a, !0), u = p(function (e) {
                        return Q(t, e) > -1;
                    }, a, !0), l = [function (e, n, i) {
                        var r = !o && (i || n !== N) || ((t = n).nodeType ? c(e, n, i) : u(e, n, i));
                        return t = null, r;
                    }]; s < r; s++) if (n = w.relative[e[s].type]) l = [p(d(l), n)]; else {
                        if (n = w.filter[e[s].type].apply(null, e[s].matches), n[M]) {
                            for (i = ++s; i < r && !w.relative[e[i].type]; i++) ;
                            return v(s > 1 && d(l), s > 1 && f(e.slice(0, s - 1).concat({value: ' ' === e[s - 2].type ? '*' : ''})).replace(oe, '$1'), n, s < i && m(e.slice(s, i)), i < r && m(e = e.slice(i)), i < r && f(e));
                        }
                        l.push(n);
                    }
                    return d(l);
                }

                function y(e, n) {
                    var r = n.length > 0, o = e.length > 0, a = function (i, a, s, c, u) {
                        var l, f, p, d = 0, h = '0', v = i && [], m = [], y = N, x = i || o && w.find.TAG('*', u),
                            b = I += null == y ? 1 : Math.random() || .1, T = x.length;
                        for (u && (N = a === L || a || u); h !== T && null != (l = x[h]); h++) {
                            if (o && l) {
                                for (f = 0, a || l.ownerDocument === L || (A(l), s = !O); p = e[f++];) if (p(l, a || L, s)) {
                                    c.push(l);
                                    break;
                                }
                                u && (I = b);
                            }
                            r && ((l = !p && l) && d--, i && v.push(l));
                        }
                        if (d += h, r && h !== d) {
                            for (f = 0; p = n[f++];) p(v, m, a, s);
                            if (i) {
                                if (d > 0) for (; h--;) v[h] || m[h] || (m[h] = G.call(c));
                                m = g(m);
                            }
                            J.apply(c, m), u && !i && m.length > 0 && d + n.length > 1 && t.uniqueSort(c);
                        }
                        return u && (I = b, N = y), v;
                    };
                    return r ? i(a) : a;
                }

                var x, b, w, T, C, k, E, j, N, S, D, A, L, q, O, P, H, F, $, M = 'sizzle' + 1 * new Date,
                    R = e.document, I = 0, z = 0, B = n(), W = n(), U = n(), _ = function (e, t) {
                        return e === t && (D = !0), 0;
                    }, X = {}.hasOwnProperty, Y = [], G = Y.pop, V = Y.push, J = Y.push, K = Y.slice, Q = function (e, t) {
                        for (var n = 0, i = e.length; n < i; n++) if (e[n] === t) return n;
                        return -1;
                    },
                    Z = 'checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped',
                    ee = '[\\x20\\t\\r\\n\\f]', te = '(?:\\\\.|[\\w-]|[^\0-\\xa0])+',
                    ne = '\\[' + ee + '*(' + te + ')(?:' + ee + '*([*^$|!~]?=)' + ee + '*(?:\'((?:\\\\.|[^\\\\\'])*)\'|"((?:\\\\.|[^\\\\"])*)"|(' + te + '))|)' + ee + '*\\]',
                    ie = ':(' + te + ')(?:\\(((\'((?:\\\\.|[^\\\\\'])*)\'|"((?:\\\\.|[^\\\\"])*)")|((?:\\\\.|[^\\\\()[\\]]|' + ne + ')*)|.*)\\)|)',
                    re = new RegExp(ee + '+', 'g'),
                    oe = new RegExp('^' + ee + '+|((?:^|[^\\\\])(?:\\\\.)*)' + ee + '+$', 'g'),
                    ae = new RegExp('^' + ee + '*,' + ee + '*'),
                    se = new RegExp('^' + ee + '*([>+~]|' + ee + ')' + ee + '*'),
                    ce = new RegExp('=' + ee + '*([^\\]\'"]*?)' + ee + '*\\]', 'g'), ue = new RegExp(ie),
                    le = new RegExp('^' + te + '$'), fe = {
                        ID: new RegExp('^#(' + te + ')'),
                        CLASS: new RegExp('^\\.(' + te + ')'),
                        TAG: new RegExp('^(' + te + '|[*])'),
                        ATTR: new RegExp('^' + ne),
                        PSEUDO: new RegExp('^' + ie),
                        CHILD: new RegExp('^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(' + ee + '*(even|odd|(([+-]|)(\\d*)n|)' + ee + '*(?:([+-]|)' + ee + '*(\\d+)|))' + ee + '*\\)|)', 'i'),
                        bool: new RegExp('^(?:' + Z + ')$', 'i'),
                        needsContext: new RegExp('^' + ee + '*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(' + ee + '*((?:-\\d)?\\d*)' + ee + '*\\)|)(?=[^-]|$)', 'i')
                    }, pe = /^(?:input|select|textarea|button)$/i, de = /^h\d$/i, he = /^[^{]+\{\s*\[native \w/,
                    ge = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, ve = /[+~]/,
                    me = new RegExp('\\\\([\\da-f]{1,6}' + ee + '?|(' + ee + ')|.)', 'ig'), ye = function (e, t, n) {
                        var i = '0x' + t - 65536;
                        return i !== i || n ? t : i < 0 ? String.fromCharCode(i + 65536) : String.fromCharCode(i >> 10 | 55296, 1023 & i | 56320);
                    }, xe = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g, be = function (e, t) {
                        return t ? '\0' === e ? '�' : e.slice(0, -1) + '\\' + e.charCodeAt(e.length - 1).toString(16) + ' ' : '\\' + e;
                    }, we = function () {
                        A();
                    }, Te = p(function (e) {
                        return !0 === e.disabled && ('form' in e || 'label' in e);
                    }, {dir: 'parentNode', next: 'legend'});
                try {
                    J.apply(Y = K.call(R.childNodes), R.childNodes), Y[R.childNodes.length].nodeType;
                } catch (e) {
                    J = {
                        apply: Y.length ? function (e, t) {
                            V.apply(e, K.call(t));
                        } : function (e, t) {
                            for (var n = e.length, i = 0; e[n++] = t[i++];) ;
                            e.length = n - 1;
                        }
                    };
                }
                b = t.support = {}, C = t.isXML = function (e) {
                    var t = e && (e.ownerDocument || e).documentElement;
                    return !!t && 'HTML' !== t.nodeName;
                }, A = t.setDocument = function (e) {
                    var t, n, i = e ? e.ownerDocument || e : R;
                    return i !== L && 9 === i.nodeType && i.documentElement ? (L = i, q = L.documentElement, O = !C(L), R !== L && (n = L.defaultView) && n.top !== n && (n.addEventListener ? n.addEventListener('unload', we, !1) : n.attachEvent && n.attachEvent('onunload', we)), b.attributes = r(function (e) {
                        return e.className = 'i', !e.getAttribute('className');
                    }), b.getElementsByTagName = r(function (e) {
                        return e.appendChild(L.createComment('')), !e.getElementsByTagName('*').length;
                    }), b.getElementsByClassName = he.test(L.getElementsByClassName), b.getById = r(function (e) {
                        return q.appendChild(e).id = M, !L.getElementsByName || !L.getElementsByName(M).length;
                    }), b.getById ? (w.filter.ID = function (e) {
                        var t = e.replace(me, ye);
                        return function (e) {
                            return e.getAttribute('id') === t;
                        };
                    }, w.find.ID = function (e, t) {
                        if (void 0 !== t.getElementById && O) {
                            var n = t.getElementById(e);
                            return n ? [n] : [];
                        }
                    }) : (w.filter.ID = function (e) {
                        var t = e.replace(me, ye);
                        return function (e) {
                            var n = void 0 !== e.getAttributeNode && e.getAttributeNode('id');
                            return n && n.value === t;
                        };
                    }, w.find.ID = function (e, t) {
                        if (void 0 !== t.getElementById && O) {
                            var n, i, r, o = t.getElementById(e);
                            if (o) {
                                if ((n = o.getAttributeNode('id')) && n.value === e) return [o];
                                for (r = t.getElementsByName(e), i = 0; o = r[i++];) if ((n = o.getAttributeNode('id')) && n.value === e) return [o];
                            }
                            return [];
                        }
                    }), w.find.TAG = b.getElementsByTagName ? function (e, t) {
                        return void 0 !== t.getElementsByTagName ? t.getElementsByTagName(e) : b.qsa ? t.querySelectorAll(e) : void 0;
                    } : function (e, t) {
                        var n, i = [], r = 0, o = t.getElementsByTagName(e);
                        if ('*' === e) {
                            for (; n = o[r++];) 1 === n.nodeType && i.push(n);
                            return i;
                        }
                        return o;
                    }, w.find.CLASS = b.getElementsByClassName && function (e, t) {
                        if (void 0 !== t.getElementsByClassName && O) return t.getElementsByClassName(e);
                    }, H = [], P = [], (b.qsa = he.test(L.querySelectorAll)) && (r(function (e) {
                        q.appendChild(e).innerHTML = '<a id=\'' + M + '\'></a><select id=\'' + M + '-\r\\\' msallowcapture=\'\'><option selected=\'\'></option></select>', e.querySelectorAll('[msallowcapture^=\'\']').length && P.push('[*^$]=' + ee + '*(?:\'\'|"")'), e.querySelectorAll('[selected]').length || P.push('\\[' + ee + '*(?:value|' + Z + ')'), e.querySelectorAll('[id~=' + M + '-]').length || P.push('~='), e.querySelectorAll(':checked').length || P.push(':checked'), e.querySelectorAll('a#' + M + '+*').length || P.push('.#.+[+~]');
                    }), r(function (e) {
                        e.innerHTML = '<a href=\'\' disabled=\'disabled\'></a><select disabled=\'disabled\'><option/></select>';
                        var t = L.createElement('input');
                        t.setAttribute('type', 'hidden'), e.appendChild(t).setAttribute('name', 'D'), e.querySelectorAll('[name=d]').length && P.push('name' + ee + '*[*^$|!~]?='), 2 !== e.querySelectorAll(':enabled').length && P.push(':enabled', ':disabled'), q.appendChild(e).disabled = !0, 2 !== e.querySelectorAll(':disabled').length && P.push(':enabled', ':disabled'), e.querySelectorAll('*,:x'), P.push(',.*:');
                    })), (b.matchesSelector = he.test(F = q.matches || q.webkitMatchesSelector || q.mozMatchesSelector || q.oMatchesSelector || q.msMatchesSelector)) && r(function (e) {
                        b.disconnectedMatch = F.call(e, '*'), F.call(e, '[s!=\'\']:x'), H.push('!=', ie);
                    }), P = P.length && new RegExp(P.join('|')), H = H.length && new RegExp(H.join('|')), t = he.test(q.compareDocumentPosition), $ = t || he.test(q.contains) ? function (e, t) {
                        var n = 9 === e.nodeType ? e.documentElement : e, i = t && t.parentNode;
                        return e === i || !(!i || 1 !== i.nodeType || !(n.contains ? n.contains(i) : e.compareDocumentPosition && 16 & e.compareDocumentPosition(i)));
                    } : function (e, t) {
                        if (t) for (; t = t.parentNode;) if (t === e) return !0;
                        return !1;
                    }, _ = t ? function (e, t) {
                        if (e === t) return D = !0, 0;
                        var n = !e.compareDocumentPosition - !t.compareDocumentPosition;
                        return n || (n = (e.ownerDocument || e) === (t.ownerDocument || t) ? e.compareDocumentPosition(t) : 1, 1 & n || !b.sortDetached && t.compareDocumentPosition(e) === n ? e === L || e.ownerDocument === R && $(R, e) ? -1 : t === L || t.ownerDocument === R && $(R, t) ? 1 : S ? Q(S, e) - Q(S, t) : 0 : 4 & n ? -1 : 1);
                    } : function (e, t) {
                        if (e === t) return D = !0, 0;
                        var n, i = 0, r = e.parentNode, o = t.parentNode, s = [e], c = [t];
                        if (!r || !o) return e === L ? -1 : t === L ? 1 : r ? -1 : o ? 1 : S ? Q(S, e) - Q(S, t) : 0;
                        if (r === o) return a(e, t);
                        for (n = e; n = n.parentNode;) s.unshift(n);
                        for (n = t; n = n.parentNode;) c.unshift(n);
                        for (; s[i] === c[i];) i++;
                        return i ? a(s[i], c[i]) : s[i] === R ? -1 : c[i] === R ? 1 : 0;
                    }, L) : L;
                }, t.matches = function (e, n) {
                    return t(e, null, null, n);
                }, t.matchesSelector = function (e, n) {
                    if ((e.ownerDocument || e) !== L && A(e), n = n.replace(ce, '=\'$1\']'), b.matchesSelector && O && !U[n + ' '] && (!H || !H.test(n)) && (!P || !P.test(n))) try {
                        var i = F.call(e, n);
                        if (i || b.disconnectedMatch || e.document && 11 !== e.document.nodeType) return i;
                    } catch (e) {
                    }
                    return t(n, L, null, [e]).length > 0;
                }, t.contains = function (e, t) {
                    return (e.ownerDocument || e) !== L && A(e), $(e, t);
                }, t.attr = function (e, t) {
                    (e.ownerDocument || e) !== L && A(e);
                    var n = w.attrHandle[t.toLowerCase()],
                        i = n && X.call(w.attrHandle, t.toLowerCase()) ? n(e, t, !O) : void 0;
                    return void 0 !== i ? i : b.attributes || !O ? e.getAttribute(t) : (i = e.getAttributeNode(t)) && i.specified ? i.value : null;
                }, t.escape = function (e) {
                    return (e + '').replace(xe, be);
                }, t.error = function (e) {
                    throw new Error('Syntax error, unrecognized expression: ' + e);
                }, t.uniqueSort = function (e) {
                    var t, n = [], i = 0, r = 0;
                    if (D = !b.detectDuplicates, S = !b.sortStable && e.slice(0), e.sort(_), D) {
                        for (; t = e[r++];) t === e[r] && (i = n.push(r));
                        for (; i--;) e.splice(n[i], 1);
                    }
                    return S = null, e;
                }, T = t.getText = function (e) {
                    var t, n = '', i = 0, r = e.nodeType;
                    if (r) {
                        if (1 === r || 9 === r || 11 === r) {
                            if ('string' == typeof e.textContent) return e.textContent;
                            for (e = e.firstChild; e; e = e.nextSibling) n += T(e);
                        } else if (3 === r || 4 === r) return e.nodeValue;
                    } else for (; t = e[i++];) n += T(t);
                    return n;
                }, w = t.selectors = {
                    cacheLength: 50,
                    createPseudo: i,
                    match: fe,
                    attrHandle: {},
                    find: {},
                    relative: {
                        '>': {dir: 'parentNode', first: !0},
                        ' ': {dir: 'parentNode'},
                        '+': {dir: 'previousSibling', first: !0},
                        '~': {dir: 'previousSibling'}
                    },
                    preFilter: {
                        ATTR: function (e) {
                            return e[1] = e[1].replace(me, ye), e[3] = (e[3] || e[4] || e[5] || '').replace(me, ye), '~=' === e[2] && (e[3] = ' ' + e[3] + ' '), e.slice(0, 4);
                        }, CHILD: function (e) {
                            return e[1] = e[1].toLowerCase(), 'nth' === e[1].slice(0, 3) ? (e[3] || t.error(e[0]), e[4] = +(e[4] ? e[5] + (e[6] || 1) : 2 * ('even' === e[3] || 'odd' === e[3])), e[5] = +(e[7] + e[8] || 'odd' === e[3])) : e[3] && t.error(e[0]), e;
                        }, PSEUDO: function (e) {
                            var t, n = !e[6] && e[2];
                            return fe.CHILD.test(e[0]) ? null : (e[3] ? e[2] = e[4] || e[5] || '' : n && ue.test(n) && (t = k(n, !0)) && (t = n.indexOf(')', n.length - t) - n.length) && (e[0] = e[0].slice(0, t), e[2] = n.slice(0, t)), e.slice(0, 3));
                        }
                    },
                    filter: {
                        TAG: function (e) {
                            var t = e.replace(me, ye).toLowerCase();
                            return '*' === e ? function () {
                                return !0;
                            } : function (e) {
                                return e.nodeName && e.nodeName.toLowerCase() === t;
                            };
                        }, CLASS: function (e) {
                            var t = B[e + ' '];
                            return t || (t = new RegExp('(^|' + ee + ')' + e + '(' + ee + '|$)')) && B(e, function (e) {
                                return t.test('string' == typeof e.className && e.className || void 0 !== e.getAttribute && e.getAttribute('class') || '');
                            });
                        }, ATTR: function (e, n, i) {
                            return function (r) {
                                var o = t.attr(r, e);
                                return null == o ? '!=' === n : !n || (o += '', '=' === n ? o === i : '!=' === n ? o !== i : '^=' === n ? i && 0 === o.indexOf(i) : '*=' === n ? i && o.indexOf(i) > -1 : '$=' === n ? i && o.slice(-i.length) === i : '~=' === n ? (' ' + o.replace(re, ' ') + ' ').indexOf(i) > -1 : '|=' === n && (o === i || o.slice(0, i.length + 1) === i + '-'));
                            };
                        }, CHILD: function (e, t, n, i, r) {
                            var o = 'nth' !== e.slice(0, 3), a = 'last' !== e.slice(-4), s = 'of-type' === t;
                            return 1 === i && 0 === r ? function (e) {
                                return !!e.parentNode;
                            } : function (t, n, c) {
                                var u, l, f, p, d, h, g = o !== a ? 'nextSibling' : 'previousSibling', v = t.parentNode,
                                    m = s && t.nodeName.toLowerCase(), y = !c && !s, x = !1;
                                if (v) {
                                    if (o) {
                                        for (; g;) {
                                            for (p = t; p = p[g];) if (s ? p.nodeName.toLowerCase() === m : 1 === p.nodeType) return !1;
                                            h = g = 'only' === e && !h && 'nextSibling';
                                        }
                                        return !0;
                                    }
                                    if (h = [a ? v.firstChild : v.lastChild], a && y) {
                                        for (p = v, f = p[M] || (p[M] = {}), l = f[p.uniqueID] || (f[p.uniqueID] = {}), u = l[e] || [], d = u[0] === I && u[1], x = d && u[2], p = d && v.childNodes[d]; p = ++d && p && p[g] || (x = d = 0) || h.pop();) if (1 === p.nodeType && ++x && p === t) {
                                            l[e] = [I, d, x];
                                            break;
                                        }
                                    } else if (y && (p = t, f = p[M] || (p[M] = {}), l = f[p.uniqueID] || (f[p.uniqueID] = {}), u = l[e] || [], d = u[0] === I && u[1], x = d), !1 === x) for (; (p = ++d && p && p[g] || (x = d = 0) || h.pop()) && ((s ? p.nodeName.toLowerCase() !== m : 1 !== p.nodeType) || !++x || (y && (f = p[M] || (p[M] = {}), l = f[p.uniqueID] || (f[p.uniqueID] = {}), l[e] = [I, x]), p !== t));) ;
                                    return (x -= r) === i || x % i == 0 && x / i >= 0;
                                }
                            };
                        }, PSEUDO: function (e, n) {
                            var r,
                                o = w.pseudos[e] || w.setFilters[e.toLowerCase()] || t.error('unsupported pseudo: ' + e);
                            return o[M] ? o(n) : o.length > 1 ? (r = [e, e, '', n], w.setFilters.hasOwnProperty(e.toLowerCase()) ? i(function (e, t) {
                                for (var i, r = o(e, n), a = r.length; a--;) i = Q(e, r[a]), e[i] = !(t[i] = r[a]);
                            }) : function (e) {
                                return o(e, 0, r);
                            }) : o;
                        }
                    },
                    pseudos: {
                        not: i(function (e) {
                            var t = [], n = [], r = E(e.replace(oe, '$1'));
                            return r[M] ? i(function (e, t, n, i) {
                                for (var o, a = r(e, null, i, []), s = e.length; s--;) (o = a[s]) && (e[s] = !(t[s] = o));
                            }) : function (e, i, o) {
                                return t[0] = e, r(t, null, o, n), t[0] = null, !n.pop();
                            };
                        }), has: i(function (e) {
                            return function (n) {
                                return t(e, n).length > 0;
                            };
                        }), contains: i(function (e) {
                            return e = e.replace(me, ye), function (t) {
                                return (t.textContent || t.innerText || T(t)).indexOf(e) > -1;
                            };
                        }), lang: i(function (e) {
                            return le.test(e || '') || t.error('unsupported lang: ' + e), e = e.replace(me, ye).toLowerCase(), function (t) {
                                var n;
                                do {
                                    if (n = O ? t.lang : t.getAttribute('xml:lang') || t.getAttribute('lang')) return (n = n.toLowerCase()) === e || 0 === n.indexOf(e + '-');
                                } while ((t = t.parentNode) && 1 === t.nodeType);
                                return !1;
                            };
                        }), target: function (t) {
                            var n = e.location && e.location.hash;
                            return n && n.slice(1) === t.id;
                        }, root: function (e) {
                            return e === q;
                        }, focus: function (e) {
                            return e === L.activeElement && (!L.hasFocus || L.hasFocus()) && !!(e.type || e.href || ~e.tabIndex);
                        }, enabled: s(!1), disabled: s(!0), checked: function (e) {
                            var t = e.nodeName.toLowerCase();
                            return 'input' === t && !!e.checked || 'option' === t && !!e.selected;
                        }, selected: function (e) {
                            return e.parentNode && e.parentNode.selectedIndex, !0 === e.selected;
                        }, empty: function (e) {
                            for (e = e.firstChild; e; e = e.nextSibling) if (e.nodeType < 6) return !1;
                            return !0;
                        }, parent: function (e) {
                            return !w.pseudos.empty(e);
                        }, header: function (e) {
                            return de.test(e.nodeName);
                        }, input: function (e) {
                            return pe.test(e.nodeName);
                        }, button: function (e) {
                            var t = e.nodeName.toLowerCase();
                            return 'input' === t && 'button' === e.type || 'button' === t;
                        }, text: function (e) {
                            var t;
                            return 'input' === e.nodeName.toLowerCase() && 'text' === e.type && (null == (t = e.getAttribute('type')) || 'text' === t.toLowerCase());
                        }, first: c(function () {
                            return [0];
                        }), last: c(function (e, t) {
                            return [t - 1];
                        }), eq: c(function (e, t, n) {
                            return [n < 0 ? n + t : n];
                        }), even: c(function (e, t) {
                            for (var n = 0; n < t; n += 2) e.push(n);
                            return e;
                        }), odd: c(function (e, t) {
                            for (var n = 1; n < t; n += 2) e.push(n);
                            return e;
                        }), lt: c(function (e, t, n) {
                            for (var i = n < 0 ? n + t : n; --i >= 0;) e.push(i);
                            return e;
                        }), gt: c(function (e, t, n) {
                            for (var i = n < 0 ? n + t : n; ++i < t;) e.push(i);
                            return e;
                        })
                    }
                }, w.pseudos.nth = w.pseudos.eq;
                for (x in{radio: !0, checkbox: !0, file: !0, password: !0, image: !0}) w.pseudos[x] = function (e) {
                    return function (t) {
                        return 'input' === t.nodeName.toLowerCase() && t.type === e;
                    };
                }(x);
                for (x in{submit: !0, reset: !0}) w.pseudos[x] = function (e) {
                    return function (t) {
                        var n = t.nodeName.toLowerCase();
                        return ('input' === n || 'button' === n) && t.type === e;
                    };
                }(x);
                return l.prototype = w.filters = w.pseudos, w.setFilters = new l, k = t.tokenize = function (e, n) {
                    var i, r, o, a, s, c, u, l = W[e + ' '];
                    if (l) return n ? 0 : l.slice(0);
                    for (s = e, c = [], u = w.preFilter; s;) {
                        i && !(r = ae.exec(s)) || (r && (s = s.slice(r[0].length) || s), c.push(o = [])), i = !1, (r = se.exec(s)) && (i = r.shift(), o.push({
                            value: i,
                            type: r[0].replace(oe, ' ')
                        }), s = s.slice(i.length));
                        for (a in w.filter) !(r = fe[a].exec(s)) || u[a] && !(r = u[a](r)) || (i = r.shift(), o.push({
                            value: i,
                            type: a,
                            matches: r
                        }), s = s.slice(i.length));
                        if (!i) break;
                    }
                    return n ? s.length : s ? t.error(e) : W(e, c).slice(0);
                }, E = t.compile = function (e, t) {
                    var n, i = [], r = [], o = U[e + ' '];
                    if (!o) {
                        for (t || (t = k(e)), n = t.length; n--;) o = m(t[n]), o[M] ? i.push(o) : r.push(o);
                        o = U(e, y(r, i)), o.selector = e;
                    }
                    return o;
                }, j = t.select = function (e, t, n, i) {
                    var r, o, a, s, c, l = 'function' == typeof e && e, p = !i && k(e = l.selector || e);
                    if (n = n || [], 1 === p.length) {
                        if (o = p[0] = p[0].slice(0), o.length > 2 && 'ID' === (a = o[0]).type && 9 === t.nodeType && O && w.relative[o[1].type]) {
                            if (!(t = (w.find.ID(a.matches[0].replace(me, ye), t) || [])[0])) return n;
                            l && (t = t.parentNode), e = e.slice(o.shift().value.length);
                        }
                        for (r = fe.needsContext.test(e) ? 0 : o.length; r-- && (a = o[r], !w.relative[s = a.type]);) if ((c = w.find[s]) && (i = c(a.matches[0].replace(me, ye), ve.test(o[0].type) && u(t.parentNode) || t))) {
                            if (o.splice(r, 1), !(e = i.length && f(o))) return J.apply(n, i), n;
                            break;
                        }
                    }
                    return (l || E(e, p))(i, t, !O, n, !t || ve.test(e) && u(t.parentNode) || t), n;
                }, b.sortStable = M.split('').sort(_).join('') === M, b.detectDuplicates = !!D, A(), b.sortDetached = r(function (e) {
                    return 1 & e.compareDocumentPosition(L.createElement('fieldset'));
                }), r(function (e) {
                    return e.innerHTML = '<a href=\'#\'></a>', '#' === e.firstChild.getAttribute('href');
                }) || o('type|href|height|width', function (e, t, n) {
                    if (!n) return e.getAttribute(t, 'type' === t.toLowerCase() ? 1 : 2);
                }), b.attributes && r(function (e) {
                    return e.innerHTML = '<input/>', e.firstChild.setAttribute('value', ''), '' === e.firstChild.getAttribute('value');
                }) || o('value', function (e, t, n) {
                    if (!n && 'input' === e.nodeName.toLowerCase()) return e.defaultValue;
                }), r(function (e) {
                    return null == e.getAttribute('disabled');
                }) || o(Z, function (e, t, n) {
                    var i;
                    if (!n) return !0 === e[t] ? t.toLowerCase() : (i = e.getAttributeNode(t)) && i.specified ? i.value : null;
                }), t;
            }(o);
            be.find = Ee, be.expr = Ee.selectors, be.expr[':'] = be.expr.pseudos, be.uniqueSort = be.unique = Ee.uniqueSort, be.text = Ee.getText, be.isXMLDoc = Ee.isXML, be.contains = Ee.contains, be.escapeSelector = Ee.escape;
            var je = function (e, t, n) {
                    for (var i = [], r = void 0 !== n; (e = e[t]) && 9 !== e.nodeType;) if (1 === e.nodeType) {
                        if (r && be(e).is(n)) break;
                        i.push(e);
                    }
                    return i;
                }, Ne = function (e, t) {
                    for (var n = []; e; e = e.nextSibling) 1 === e.nodeType && e !== t && n.push(e);
                    return n;
                }, Se = be.expr.match.needsContext, De = /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i,
                Ae = /^.[^:#\[\.,]*$/;
            be.filter = function (e, t, n) {
                var i = t[0];
                return n && (e = ':not(' + e + ')'), 1 === t.length && 1 === i.nodeType ? be.find.matchesSelector(i, e) ? [i] : [] : be.find.matches(e, be.grep(t, function (e) {
                    return 1 === e.nodeType;
                }));
            }, be.fn.extend({
                find: function (e) {
                    var t, n, i = this.length, r = this;
                    if ('string' != typeof e) return this.pushStack(be(e).filter(function () {
                        for (t = 0; t < i; t++) if (be.contains(r[t], this)) return !0;
                    }));
                    for (n = this.pushStack([]), t = 0; t < i; t++) be.find(e, r[t], n);
                    return i > 1 ? be.uniqueSort(n) : n;
                }, filter: function (e) {
                    return this.pushStack(l(this, e || [], !1));
                }, not: function (e) {
                    return this.pushStack(l(this, e || [], !0));
                }, is: function (e) {
                    return !!l(this, 'string' == typeof e && Se.test(e) ? be(e) : e || [], !1).length;
                }
            });
            var Le, qe = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;
            (be.fn.init = function (e, t, n) {
                var i, r;
                if (!e) return this;
                if (n = n || Le, 'string' == typeof e) {
                    if (!(i = '<' === e[0] && '>' === e[e.length - 1] && e.length >= 3 ? [null, e, null] : qe.exec(e)) || !i[1] && t) return !t || t.jquery ? (t || n).find(e) : this.constructor(t).find(e);
                    if (i[1]) {
                        if (t = t instanceof be ? t[0] : t, be.merge(this, be.parseHTML(i[1], t && t.nodeType ? t.ownerDocument || t : se, !0)), De.test(i[1]) && be.isPlainObject(t)) for (i in t) be.isFunction(this[i]) ? this[i](t[i]) : this.attr(i, t[i]);
                        return this;
                    }
                    return r = se.getElementById(i[2]), r && (this[0] = r, this.length = 1), this;
                }
                return e.nodeType ? (this[0] = e, this.length = 1, this) : be.isFunction(e) ? void 0 !== n.ready ? n.ready(e) : e(be) : be.makeArray(e, this);
            }).prototype = be.fn, Le = be(se);
            var Oe = /^(?:parents|prev(?:Until|All))/, Pe = {children: !0, contents: !0, next: !0, prev: !0};
            be.fn.extend({
                has: function (e) {
                    var t = be(e, this), n = t.length;
                    return this.filter(function () {
                        for (var e = 0; e < n; e++) if (be.contains(this, t[e])) return !0;
                    });
                }, closest: function (e, t) {
                    var n, i = 0, r = this.length, o = [], a = 'string' != typeof e && be(e);
                    if (!Se.test(e)) for (; i < r; i++) for (n = this[i]; n && n !== t; n = n.parentNode) if (n.nodeType < 11 && (a ? a.index(n) > -1 : 1 === n.nodeType && be.find.matchesSelector(n, e))) {
                        o.push(n);
                        break;
                    }
                    return this.pushStack(o.length > 1 ? be.uniqueSort(o) : o);
                }, index: function (e) {
                    return e ? 'string' == typeof e ? pe.call(be(e), this[0]) : pe.call(this, e.jquery ? e[0] : e) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1;
                }, add: function (e, t) {
                    return this.pushStack(be.uniqueSort(be.merge(this.get(), be(e, t))));
                }, addBack: function (e) {
                    return this.add(null == e ? this.prevObject : this.prevObject.filter(e));
                }
            }), be.each({
                parent: function (e) {
                    var t = e.parentNode;
                    return t && 11 !== t.nodeType ? t : null;
                }, parents: function (e) {
                    return je(e, 'parentNode');
                }, parentsUntil: function (e, t, n) {
                    return je(e, 'parentNode', n);
                }, next: function (e) {
                    return f(e, 'nextSibling');
                }, prev: function (e) {
                    return f(e, 'previousSibling');
                }, nextAll: function (e) {
                    return je(e, 'nextSibling');
                }, prevAll: function (e) {
                    return je(e, 'previousSibling');
                }, nextUntil: function (e, t, n) {
                    return je(e, 'nextSibling', n);
                }, prevUntil: function (e, t, n) {
                    return je(e, 'previousSibling', n);
                }, siblings: function (e) {
                    return Ne((e.parentNode || {}).firstChild, e);
                }, children: function (e) {
                    return Ne(e.firstChild);
                }, contents: function (e) {
                    return u(e, 'iframe') ? e.contentDocument : (u(e, 'template') && (e = e.content || e), be.merge([], e.childNodes));
                }
            }, function (e, t) {
                be.fn[e] = function (n, i) {
                    var r = be.map(this, t, n);
                    return 'Until' !== e.slice(-5) && (i = n), i && 'string' == typeof i && (r = be.filter(i, r)), this.length > 1 && (Pe[e] || be.uniqueSort(r), Oe.test(e) && r.reverse()), this.pushStack(r);
                };
            });
            var He = /[^\x20\t\r\n\f]+/g;
            be.Callbacks = function (e) {
                e = 'string' == typeof e ? p(e) : be.extend({}, e);
                var t, n, i, r, o = [], a = [], s = -1, c = function () {
                    for (r = r || e.once, i = t = !0; a.length; s = -1) for (n = a.shift(); ++s < o.length;) !1 === o[s].apply(n[0], n[1]) && e.stopOnFalse && (s = o.length, n = !1);
                    e.memory || (n = !1), t = !1, r && (o = n ? [] : '');
                }, u = {
                    add: function () {
                        return o && (n && !t && (s = o.length - 1, a.push(n)), function t(n) {
                            be.each(n, function (n, i) {
                                be.isFunction(i) ? e.unique && u.has(i) || o.push(i) : i && i.length && 'string' !== be.type(i) && t(i);
                            });
                        }(arguments), n && !t && c()), this;
                    }, remove: function () {
                        return be.each(arguments, function (e, t) {
                            for (var n; (n = be.inArray(t, o, n)) > -1;) o.splice(n, 1), n <= s && s--;
                        }), this;
                    }, has: function (e) {
                        return e ? be.inArray(e, o) > -1 : o.length > 0;
                    }, empty: function () {
                        return o && (o = []), this;
                    }, disable: function () {
                        return r = a = [], o = n = '', this;
                    }, disabled: function () {
                        return !o;
                    }, lock: function () {
                        return r = a = [], n || t || (o = n = ''), this;
                    }, locked: function () {
                        return !!r;
                    }, fireWith: function (e, n) {
                        return r || (n = n || [], n = [e, n.slice ? n.slice() : n], a.push(n), t || c()), this;
                    }, fire: function () {
                        return u.fireWith(this, arguments), this;
                    }, fired: function () {
                        return !!i;
                    }
                };
                return u;
            }, be.extend({
                Deferred: function (e) {
                    var t = [['notify', 'progress', be.Callbacks('memory'), be.Callbacks('memory'), 2], ['resolve', 'done', be.Callbacks('once memory'), be.Callbacks('once memory'), 0, 'resolved'], ['reject', 'fail', be.Callbacks('once memory'), be.Callbacks('once memory'), 1, 'rejected']],
                        n = 'pending', i = {
                            state: function () {
                                return n;
                            }, always: function () {
                                return r.done(arguments).fail(arguments), this;
                            }, catch: function (e) {
                                return i.then(null, e);
                            }, pipe: function () {
                                var e = arguments;
                                return be.Deferred(function (n) {
                                    be.each(t, function (t, i) {
                                        var o = be.isFunction(e[i[4]]) && e[i[4]];
                                        r[i[1]](function () {
                                            var e = o && o.apply(this, arguments);
                                            e && be.isFunction(e.promise) ? e.promise().progress(n.notify).done(n.resolve).fail(n.reject) : n[i[0] + 'With'](this, o ? [e] : arguments);
                                        });
                                    }), e = null;
                                }).promise();
                            }, then: function (e, n, i) {
                                function r(e, t, n, i) {
                                    return function () {
                                        var s = this, c = arguments, u = function () {
                                            var o, u;
                                            if (!(e < a)) {
                                                if ((o = n.apply(s, c)) === t.promise()) throw new TypeError('Thenable self-resolution');
                                                u = o && ('object' == typeof o || 'function' == typeof o) && o.then, be.isFunction(u) ? i ? u.call(o, r(a, t, d, i), r(a, t, h, i)) : (a++, u.call(o, r(a, t, d, i), r(a, t, h, i), r(a, t, d, t.notifyWith))) : (n !== d && (s = void 0, c = [o]), (i || t.resolveWith)(s, c));
                                            }
                                        }, l = i ? u : function () {
                                            try {
                                                u();
                                            } catch (i) {
                                                be.Deferred.exceptionHook && be.Deferred.exceptionHook(i, l.stackTrace), e + 1 >= a && (n !== h && (s = void 0, c = [i]), t.rejectWith(s, c));
                                            }
                                        };
                                        e ? l() : (be.Deferred.getStackHook && (l.stackTrace = be.Deferred.getStackHook()), o.setTimeout(l));
                                    };
                                }

                                var a = 0;
                                return be.Deferred(function (o) {
                                    t[0][3].add(r(0, o, be.isFunction(i) ? i : d, o.notifyWith)), t[1][3].add(r(0, o, be.isFunction(e) ? e : d)), t[2][3].add(r(0, o, be.isFunction(n) ? n : h));
                                }).promise();
                            }, promise: function (e) {
                                return null != e ? be.extend(e, i) : i;
                            }
                        }, r = {};
                    return be.each(t, function (e, o) {
                        var a = o[2], s = o[5];
                        i[o[1]] = a.add, s && a.add(function () {
                            n = s;
                        }, t[3 - e][2].disable, t[0][2].lock), a.add(o[3].fire), r[o[0]] = function () {
                            return r[o[0] + 'With'](this === r ? void 0 : this, arguments), this;
                        }, r[o[0] + 'With'] = a.fireWith;
                    }), i.promise(r), e && e.call(r, r), r;
                }, when: function (e) {
                    var t = arguments.length, n = t, i = Array(n), r = ue.call(arguments), o = be.Deferred(),
                        a = function (e) {
                            return function (n) {
                                i[e] = this, r[e] = arguments.length > 1 ? ue.call(arguments) : n, --t || o.resolveWith(i, r);
                            };
                        };
                    if (t <= 1 && (g(e, o.done(a(n)).resolve, o.reject, !t), 'pending' === o.state() || be.isFunction(r[n] && r[n].then))) return o.then();
                    for (; n--;) g(r[n], a(n), o.reject);
                    return o.promise();
                }
            });
            var Fe = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;
            be.Deferred.exceptionHook = function (e, t) {
                o.console && o.console.warn && e && Fe.test(e.name) && o.console.warn('jQuery.Deferred exception: ' + e.message, e.stack, t);
            }, be.readyException = function (e) {
                o.setTimeout(function () {
                    throw e;
                });
            };
            var $e = be.Deferred();
            be.fn.ready = function (e) {
                return $e.then(e).catch(function (e) {
                    be.readyException(e);
                }), this;
            }, be.extend({
                isReady: !1, readyWait: 1, ready: function (e) {
                    (!0 === e ? --be.readyWait : be.isReady) || (be.isReady = !0, !0 !== e && --be.readyWait > 0 || $e.resolveWith(se, [be]));
                }
            }), be.ready.then = $e.then, 'complete' === se.readyState || 'loading' !== se.readyState && !se.documentElement.doScroll ? o.setTimeout(be.ready) : (se.addEventListener('DOMContentLoaded', v), o.addEventListener('load', v));
            var Me = function (e, t, n, i, r, o, a) {
                var s = 0, c = e.length, u = null == n;
                if ('object' === be.type(n)) {
                    r = !0;
                    for (s in n) Me(e, t, s, n[s], !0, o, a);
                } else if (void 0 !== i && (r = !0, be.isFunction(i) || (a = !0), u && (a ? (t.call(e, i), t = null) : (u = t, t = function (e, t, n) {
                    return u.call(be(e), n);
                })), t)) for (; s < c; s++) t(e[s], n, a ? i : i.call(e[s], s, t(e[s], n)));
                return r ? e : u ? t.call(e) : c ? t(e[0], n) : o;
            }, Re = function (e) {
                return 1 === e.nodeType || 9 === e.nodeType || !+e.nodeType;
            };
            m.uid = 1, m.prototype = {
                cache: function (e) {
                    var t = e[this.expando];
                    return t || (t = {}, Re(e) && (e.nodeType ? e[this.expando] = t : Object.defineProperty(e, this.expando, {
                        value: t,
                        configurable: !0
                    }))), t;
                }, set: function (e, t, n) {
                    var i, r = this.cache(e);
                    if ('string' == typeof t) r[be.camelCase(t)] = n; else for (i in t) r[be.camelCase(i)] = t[i];
                    return r;
                }, get: function (e, t) {
                    return void 0 === t ? this.cache(e) : e[this.expando] && e[this.expando][be.camelCase(t)];
                }, access: function (e, t, n) {
                    return void 0 === t || t && 'string' == typeof t && void 0 === n ? this.get(e, t) : (this.set(e, t, n), void 0 !== n ? n : t);
                }, remove: function (e, t) {
                    var n, i = e[this.expando];
                    if (void 0 !== i) {
                        if (void 0 !== t) {
                            Array.isArray(t) ? t = t.map(be.camelCase) : (t = be.camelCase(t), t = t in i ? [t] : t.match(He) || []), n = t.length;
                            for (; n--;) delete i[t[n]];
                        }
                        (void 0 === t || be.isEmptyObject(i)) && (e.nodeType ? e[this.expando] = void 0 : delete e[this.expando]);
                    }
                }, hasData: function (e) {
                    var t = e[this.expando];
                    return void 0 !== t && !be.isEmptyObject(t);
                }
            };
            var Ie = new m, ze = new m, Be = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, We = /[A-Z]/g;
            be.extend({
                hasData: function (e) {
                    return ze.hasData(e) || Ie.hasData(e);
                }, data: function (e, t, n) {
                    return ze.access(e, t, n);
                }, removeData: function (e, t) {
                    ze.remove(e, t);
                }, _data: function (e, t, n) {
                    return Ie.access(e, t, n);
                }, _removeData: function (e, t) {
                    Ie.remove(e, t);
                }
            }), be.fn.extend({
                data: function (e, t) {
                    var n, i, r, o = this[0], a = o && o.attributes;
                    if (void 0 === e) {
                        if (this.length && (r = ze.get(o), 1 === o.nodeType && !Ie.get(o, 'hasDataAttrs'))) {
                            for (n = a.length; n--;) a[n] && (i = a[n].name, 0 === i.indexOf('data-') && (i = be.camelCase(i.slice(5)), x(o, i, r[i])));
                            Ie.set(o, 'hasDataAttrs', !0);
                        }
                        return r;
                    }
                    return 'object' == typeof e ? this.each(function () {
                        ze.set(this, e);
                    }) : Me(this, function (t) {
                        var n;
                        if (o && void 0 === t) {
                            if (void 0 !== (n = ze.get(o, e))) return n;
                            if (void 0 !== (n = x(o, e))) return n;
                        } else this.each(function () {
                            ze.set(this, e, t);
                        });
                    }, null, t, arguments.length > 1, null, !0);
                }, removeData: function (e) {
                    return this.each(function () {
                        ze.remove(this, e);
                    });
                }
            }), be.extend({
                queue: function (e, t, n) {
                    var i;
                    if (e) return t = (t || 'fx') + 'queue', i = Ie.get(e, t), n && (!i || Array.isArray(n) ? i = Ie.access(e, t, be.makeArray(n)) : i.push(n)), i || [];
                }, dequeue: function (e, t) {
                    t = t || 'fx';
                    var n = be.queue(e, t), i = n.length, r = n.shift(), o = be._queueHooks(e, t), a = function () {
                        be.dequeue(e, t);
                    };
                    'inprogress' === r && (r = n.shift(), i--), r && ('fx' === t && n.unshift('inprogress'), delete o.stop, r.call(e, a, o)), !i && o && o.empty.fire();
                }, _queueHooks: function (e, t) {
                    var n = t + 'queueHooks';
                    return Ie.get(e, n) || Ie.access(e, n, {
                        empty: be.Callbacks('once memory').add(function () {
                            Ie.remove(e, [t + 'queue', n]);
                        })
                    });
                }
            }), be.fn.extend({
                queue: function (e, t) {
                    var n = 2;
                    return 'string' != typeof e && (t = e, e = 'fx', n--), arguments.length < n ? be.queue(this[0], e) : void 0 === t ? this : this.each(function () {
                        var n = be.queue(this, e, t);
                        be._queueHooks(this, e), 'fx' === e && 'inprogress' !== n[0] && be.dequeue(this, e);
                    });
                }, dequeue: function (e) {
                    return this.each(function () {
                        be.dequeue(this, e);
                    });
                }, clearQueue: function (e) {
                    return this.queue(e || 'fx', []);
                }, promise: function (e, t) {
                    var n, i = 1, r = be.Deferred(), o = this, a = this.length, s = function () {
                        --i || r.resolveWith(o, [o]);
                    };
                    for ('string' != typeof e && (t = e, e = void 0), e = e || 'fx'; a--;) (n = Ie.get(o[a], e + 'queueHooks')) && n.empty && (i++, n.empty.add(s));
                    return s(), r.promise(t);
                }
            });
            var Ue = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,
                _e = new RegExp('^(?:([+-])=|)(' + Ue + ')([a-z%]*)$', 'i'), Xe = ['Top', 'Right', 'Bottom', 'Left'],
                Ye = function (e, t) {
                    return e = t || e, 'none' === e.style.display || '' === e.style.display && be.contains(e.ownerDocument, e) && 'none' === be.css(e, 'display');
                }, Ge = function (e, t, n, i) {
                    var r, o, a = {};
                    for (o in t) a[o] = e.style[o], e.style[o] = t[o];
                    r = n.apply(e, i || []);
                    for (o in t) e.style[o] = a[o];
                    return r;
                }, Ve = {};
            be.fn.extend({
                show: function () {
                    return T(this, !0);
                }, hide: function () {
                    return T(this);
                }, toggle: function (e) {
                    return 'boolean' == typeof e ? e ? this.show() : this.hide() : this.each(function () {
                        Ye(this) ? be(this).show() : be(this).hide();
                    });
                }
            });
            var Je = /^(?:checkbox|radio)$/i, Ke = /<([a-z][^\/\0>\x20\t\r\n\f]+)/i, Qe = /^$|\/(?:java|ecma)script/i,
                Ze = {
                    option: [1, '<select multiple=\'multiple\'>', '</select>'],
                    thead: [1, '<table>', '</table>'],
                    col: [2, '<table><colgroup>', '</colgroup></table>'],
                    tr: [2, '<table><tbody>', '</tbody></table>'],
                    td: [3, '<table><tbody><tr>', '</tr></tbody></table>'],
                    _default: [0, '', '']
                };
            Ze.optgroup = Ze.option, Ze.tbody = Ze.tfoot = Ze.colgroup = Ze.caption = Ze.thead, Ze.th = Ze.td;
            var et = /<|&#?\w+;/;
            !function () {
                var e = se.createDocumentFragment(), t = e.appendChild(se.createElement('div')),
                    n = se.createElement('input');
                n.setAttribute('type', 'radio'), n.setAttribute('checked', 'checked'), n.setAttribute('name', 't'), t.appendChild(n), ye.checkClone = t.cloneNode(!0).cloneNode(!0).lastChild.checked, t.innerHTML = '<textarea>x</textarea>', ye.noCloneChecked = !!t.cloneNode(!0).lastChild.defaultValue;
            }();
            var tt = se.documentElement, nt = /^key/, it = /^(?:mouse|pointer|contextmenu|drag|drop)|click/,
                rt = /^([^.]*)(?:\.(.+)|)/;
            be.event = {
                global: {}, add: function (e, t, n, i, r) {
                    var o, a, s, c, u, l, f, p, d, h, g, v = Ie.get(e);
                    if (v) for (n.handler && (o = n, n = o.handler, r = o.selector), r && be.find.matchesSelector(tt, r), n.guid || (n.guid = be.guid++), (c = v.events) || (c = v.events = {}), (a = v.handle) || (a = v.handle = function (t) {
                        return void 0 !== be && be.event.triggered !== t.type ? be.event.dispatch.apply(e, arguments) : void 0;
                    }), t = (t || '').match(He) || [''], u = t.length; u--;) s = rt.exec(t[u]) || [], d = g = s[1], h = (s[2] || '').split('.').sort(), d && (f = be.event.special[d] || {}, d = (r ? f.delegateType : f.bindType) || d, f = be.event.special[d] || {}, l = be.extend({
                        type: d,
                        origType: g,
                        data: i,
                        handler: n,
                        guid: n.guid,
                        selector: r,
                        needsContext: r && be.expr.match.needsContext.test(r),
                        namespace: h.join('.')
                    }, o), (p = c[d]) || (p = c[d] = [], p.delegateCount = 0, f.setup && !1 !== f.setup.call(e, i, h, a) || e.addEventListener && e.addEventListener(d, a)), f.add && (f.add.call(e, l), l.handler.guid || (l.handler.guid = n.guid)), r ? p.splice(p.delegateCount++, 0, l) : p.push(l), be.event.global[d] = !0);
                }, remove: function (e, t, n, i, r) {
                    var o, a, s, c, u, l, f, p, d, h, g, v = Ie.hasData(e) && Ie.get(e);
                    if (v && (c = v.events)) {
                        for (t = (t || '').match(He) || [''], u = t.length; u--;) if (s = rt.exec(t[u]) || [], d = g = s[1], h = (s[2] || '').split('.').sort(), d) {
                            for (f = be.event.special[d] || {}, d = (i ? f.delegateType : f.bindType) || d, p = c[d] || [], s = s[2] && new RegExp('(^|\\.)' + h.join('\\.(?:.*\\.|)') + '(\\.|$)'), a = o = p.length; o--;) l = p[o], !r && g !== l.origType || n && n.guid !== l.guid || s && !s.test(l.namespace) || i && i !== l.selector && ('**' !== i || !l.selector) || (p.splice(o, 1), l.selector && p.delegateCount--, f.remove && f.remove.call(e, l));
                            a && !p.length && (f.teardown && !1 !== f.teardown.call(e, h, v.handle) || be.removeEvent(e, d, v.handle), delete c[d]);
                        } else for (d in c) be.event.remove(e, d + t[u], n, i, !0);
                        be.isEmptyObject(c) && Ie.remove(e, 'handle events');
                    }
                }, dispatch: function (e) {
                    var t, n, i, r, o, a, s = be.event.fix(e), c = new Array(arguments.length),
                        u = (Ie.get(this, 'events') || {})[s.type] || [], l = be.event.special[s.type] || {};
                    for (c[0] = s, t = 1; t < arguments.length; t++) c[t] = arguments[t];
                    if (s.delegateTarget = this, !l.preDispatch || !1 !== l.preDispatch.call(this, s)) {
                        for (a = be.event.handlers.call(this, s, u), t = 0; (r = a[t++]) && !s.isPropagationStopped();) for (s.currentTarget = r.elem, n = 0; (o = r.handlers[n++]) && !s.isImmediatePropagationStopped();) s.rnamespace && !s.rnamespace.test(o.namespace) || (s.handleObj = o, s.data = o.data, void 0 !== (i = ((be.event.special[o.origType] || {}).handle || o.handler).apply(r.elem, c)) && !1 === (s.result = i) && (s.preventDefault(), s.stopPropagation()));
                        return l.postDispatch && l.postDispatch.call(this, s), s.result;
                    }
                }, handlers: function (e, t) {
                    var n, i, r, o, a, s = [], c = t.delegateCount, u = e.target;
                    if (c && u.nodeType && !('click' === e.type && e.button >= 1)) for (; u !== this; u = u.parentNode || this) if (1 === u.nodeType && ('click' !== e.type || !0 !== u.disabled)) {
                        for (o = [], a = {}, n = 0; n < c; n++) i = t[n], r = i.selector + ' ', void 0 === a[r] && (a[r] = i.needsContext ? be(r, this).index(u) > -1 : be.find(r, this, null, [u]).length), a[r] && o.push(i);
                        o.length && s.push({elem: u, handlers: o});
                    }
                    return u = this, c < t.length && s.push({elem: u, handlers: t.slice(c)}), s;
                }, addProp: function (e, t) {
                    Object.defineProperty(be.Event.prototype, e, {
                        enumerable: !0,
                        configurable: !0,
                        get: be.isFunction(t) ? function () {
                            if (this.originalEvent) return t(this.originalEvent);
                        } : function () {
                            if (this.originalEvent) return this.originalEvent[e];
                        },
                        set: function (t) {
                            Object.defineProperty(this, e, {enumerable: !0, configurable: !0, writable: !0, value: t});
                        }
                    });
                }, fix: function (e) {
                    return e[be.expando] ? e : new be.Event(e);
                }, special: {
                    load: {noBubble: !0}, focus: {
                        trigger: function () {
                            if (this !== S() && this.focus) return this.focus(), !1;
                        }, delegateType: 'focusin'
                    }, blur: {
                        trigger: function () {
                            if (this === S() && this.blur) return this.blur(), !1;
                        }, delegateType: 'focusout'
                    }, click: {
                        trigger: function () {
                            if ('checkbox' === this.type && this.click && u(this, 'input')) return this.click(), !1;
                        }, _default: function (e) {
                            return u(e.target, 'a');
                        }
                    }, beforeunload: {
                        postDispatch: function (e) {
                            void 0 !== e.result && e.originalEvent && (e.originalEvent.returnValue = e.result);
                        }
                    }
                }
            }, be.removeEvent = function (e, t, n) {
                e.removeEventListener && e.removeEventListener(t, n);
            }, be.Event = function (e, t) {
                return this instanceof be.Event ? (e && e.type ? (this.originalEvent = e, this.type = e.type, this.isDefaultPrevented = e.defaultPrevented || void 0 === e.defaultPrevented && !1 === e.returnValue ? j : N, this.target = e.target && 3 === e.target.nodeType ? e.target.parentNode : e.target, this.currentTarget = e.currentTarget, this.relatedTarget = e.relatedTarget) : this.type = e, t && be.extend(this, t), this.timeStamp = e && e.timeStamp || be.now(), void(this[be.expando] = !0)) : new be.Event(e, t);
            }, be.Event.prototype = {
                constructor: be.Event,
                isDefaultPrevented: N,
                isPropagationStopped: N,
                isImmediatePropagationStopped: N,
                isSimulated: !1,
                preventDefault: function () {
                    var e = this.originalEvent;
                    this.isDefaultPrevented = j, e && !this.isSimulated && e.preventDefault();
                },
                stopPropagation: function () {
                    var e = this.originalEvent;
                    this.isPropagationStopped = j, e && !this.isSimulated && e.stopPropagation();
                },
                stopImmediatePropagation: function () {
                    var e = this.originalEvent;
                    this.isImmediatePropagationStopped = j, e && !this.isSimulated && e.stopImmediatePropagation(), this.stopPropagation();
                }
            }, be.each({
                altKey: !0,
                bubbles: !0,
                cancelable: !0,
                changedTouches: !0,
                ctrlKey: !0,
                detail: !0,
                eventPhase: !0,
                metaKey: !0,
                pageX: !0,
                pageY: !0,
                shiftKey: !0,
                view: !0,
                char: !0,
                charCode: !0,
                key: !0,
                keyCode: !0,
                button: !0,
                buttons: !0,
                clientX: !0,
                clientY: !0,
                offsetX: !0,
                offsetY: !0,
                pointerId: !0,
                pointerType: !0,
                screenX: !0,
                screenY: !0,
                targetTouches: !0,
                toElement: !0,
                touches: !0,
                which: function (e) {
                    var t = e.button;
                    return null == e.which && nt.test(e.type) ? null != e.charCode ? e.charCode : e.keyCode : !e.which && void 0 !== t && it.test(e.type) ? 1 & t ? 1 : 2 & t ? 3 : 4 & t ? 2 : 0 : e.which;
                }
            }, be.event.addProp), be.each({
                mouseenter: 'mouseover',
                mouseleave: 'mouseout',
                pointerenter: 'pointerover',
                pointerleave: 'pointerout'
            }, function (e, t) {
                be.event.special[e] = {
                    delegateType: t, bindType: t, handle: function (e) {
                        var n, i = this, r = e.relatedTarget, o = e.handleObj;
                        return r && (r === i || be.contains(i, r)) || (e.type = o.origType, n = o.handler.apply(this, arguments), e.type = t), n;
                    }
                };
            }), be.fn.extend({
                on: function (e, t, n, i) {
                    return D(this, e, t, n, i);
                }, one: function (e, t, n, i) {
                    return D(this, e, t, n, i, 1);
                }, off: function (e, t, n) {
                    var i, r;
                    if (e && e.preventDefault && e.handleObj) return i = e.handleObj, be(e.delegateTarget).off(i.namespace ? i.origType + '.' + i.namespace : i.origType, i.selector, i.handler), this;
                    if ('object' == typeof e) {
                        for (r in e) this.off(r, t, e[r]);
                        return this;
                    }
                    return !1 !== t && 'function' != typeof t || (n = t, t = void 0), !1 === n && (n = N), this.each(function () {
                        be.event.remove(this, e, n, t);
                    });
                }
            });
            var ot = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,
                at = /<script|<style|<link/i, st = /checked\s*(?:[^=]|=\s*.checked.)/i, ct = /^true\/(.*)/,
                ut = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;
            be.extend({
                htmlPrefilter: function (e) {
                    return e.replace(ot, '<$1></$2>');
                }, clone: function (e, t, n) {
                    var i, r, o, a, s = e.cloneNode(!0), c = be.contains(e.ownerDocument, e);
                    if (!(ye.noCloneChecked || 1 !== e.nodeType && 11 !== e.nodeType || be.isXMLDoc(e))) for (a = C(s), o = C(e), i = 0, r = o.length; i < r; i++) P(o[i], a[i]);
                    if (t) if (n) for (o = o || C(e), a = a || C(s), i = 0, r = o.length; i < r; i++) O(o[i], a[i]); else O(e, s);
                    return a = C(s, 'script'), a.length > 0 && k(a, !c && C(e, 'script')), s;
                }, cleanData: function (e) {
                    for (var t, n, i, r = be.event.special, o = 0; void 0 !== (n = e[o]); o++) if (Re(n)) {
                        if (t = n[Ie.expando]) {
                            if (t.events) for (i in t.events) r[i] ? be.event.remove(n, i) : be.removeEvent(n, i, t.handle);
                            n[Ie.expando] = void 0;
                        }
                        n[ze.expando] && (n[ze.expando] = void 0);
                    }
                }
            }), be.fn.extend({
                detach: function (e) {
                    return F(this, e, !0);
                }, remove: function (e) {
                    return F(this, e);
                }, text: function (e) {
                    return Me(this, function (e) {
                        return void 0 === e ? be.text(this) : this.empty().each(function () {
                            1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || (this.textContent = e);
                        });
                    }, null, e, arguments.length);
                }, append: function () {
                    return H(this, arguments, function (e) {
                        if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) {
                            A(this, e).appendChild(e);
                        }
                    });
                }, prepend: function () {
                    return H(this, arguments, function (e) {
                        if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) {
                            var t = A(this, e);
                            t.insertBefore(e, t.firstChild);
                        }
                    });
                }, before: function () {
                    return H(this, arguments, function (e) {
                        this.parentNode && this.parentNode.insertBefore(e, this);
                    });
                }, after: function () {
                    return H(this, arguments, function (e) {
                        this.parentNode && this.parentNode.insertBefore(e, this.nextSibling);
                    });
                }, empty: function () {
                    for (var e, t = 0; null != (e = this[t]); t++) 1 === e.nodeType && (be.cleanData(C(e, !1)), e.textContent = '');
                    return this;
                }, clone: function (e, t) {
                    return e = null != e && e, t = null == t ? e : t, this.map(function () {
                        return be.clone(this, e, t);
                    });
                }, html: function (e) {
                    return Me(this, function (e) {
                        var t = this[0] || {}, n = 0, i = this.length;
                        if (void 0 === e && 1 === t.nodeType) return t.innerHTML;
                        if ('string' == typeof e && !at.test(e) && !Ze[(Ke.exec(e) || ['', ''])[1].toLowerCase()]) {
                            e = be.htmlPrefilter(e);
                            try {
                                for (; n < i; n++) t = this[n] || {}, 1 === t.nodeType && (be.cleanData(C(t, !1)), t.innerHTML = e);
                                t = 0;
                            } catch (e) {
                            }
                        }
                        t && this.empty().append(e);
                    }, null, e, arguments.length);
                }, replaceWith: function () {
                    var e = [];
                    return H(this, arguments, function (t) {
                        var n = this.parentNode;
                        be.inArray(this, e) < 0 && (be.cleanData(C(this)), n && n.replaceChild(t, this));
                    }, e);
                }
            }), be.each({
                appendTo: 'append',
                prependTo: 'prepend',
                insertBefore: 'before',
                insertAfter: 'after',
                replaceAll: 'replaceWith'
            }, function (e, t) {
                be.fn[e] = function (e) {
                    for (var n, i = [], r = be(e), o = r.length - 1, a = 0; a <= o; a++) n = a === o ? this : this.clone(!0), be(r[a])[t](n), fe.apply(i, n.get());
                    return this.pushStack(i);
                };
            });
            var lt = /^margin/, ft = new RegExp('^(' + Ue + ')(?!px)[a-z%]+$', 'i'), pt = function (e) {
                var t = e.ownerDocument.defaultView;
                return t && t.opener || (t = o), t.getComputedStyle(e);
            };
            !function () {
                function e() {
                    if (s) {
                        s.style.cssText = 'box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%', s.innerHTML = '', tt.appendChild(a);
                        var e = o.getComputedStyle(s);
                        t = '1%' !== e.top, r = '2px' === e.marginLeft, n = '4px' === e.width, s.style.marginRight = '50%', i = '4px' === e.marginRight, tt.removeChild(a), s = null;
                    }
                }

                var t, n, i, r, a = se.createElement('div'), s = se.createElement('div');
                s.style && (s.style.backgroundClip = 'content-box', s.cloneNode(!0).style.backgroundClip = '', ye.clearCloneStyle = 'content-box' === s.style.backgroundClip, a.style.cssText = 'border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute', a.appendChild(s), be.extend(ye, {
                    pixelPosition: function () {
                        return e(), t;
                    }, boxSizingReliable: function () {
                        return e(), n;
                    }, pixelMarginRight: function () {
                        return e(), i;
                    }, reliableMarginLeft: function () {
                        return e(), r;
                    }
                }));
            }();
            var dt = /^(none|table(?!-c[ea]).+)/, ht = /^--/,
                gt = {position: 'absolute', visibility: 'hidden', display: 'block'},
                vt = {letterSpacing: '0', fontWeight: '400'}, mt = ['Webkit', 'Moz', 'ms'],
                yt = se.createElement('div').style;
            be.extend({
                cssHooks: {
                    opacity: {
                        get: function (e, t) {
                            if (t) {
                                var n = $(e, 'opacity');
                                return '' === n ? '1' : n;
                            }
                        }
                    }
                },
                cssNumber: {
                    animationIterationCount: !0,
                    columnCount: !0,
                    fillOpacity: !0,
                    flexGrow: !0,
                    flexShrink: !0,
                    fontWeight: !0,
                    lineHeight: !0,
                    opacity: !0,
                    order: !0,
                    orphans: !0,
                    widows: !0,
                    zIndex: !0,
                    zoom: !0
                },
                cssProps: {float: 'cssFloat'},
                style: function (e, t, n, i) {
                    if (e && 3 !== e.nodeType && 8 !== e.nodeType && e.style) {
                        var r, o, a, s = be.camelCase(t), c = ht.test(t), u = e.style;
                        return c || (t = I(s)), a = be.cssHooks[t] || be.cssHooks[s], void 0 === n ? a && 'get' in a && void 0 !== (r = a.get(e, !1, i)) ? r : u[t] : (o = typeof n, 'string' === o && (r = _e.exec(n)) && r[1] && (n = b(e, t, r), o = 'number'), void(null != n && n === n && ('number' === o && (n += r && r[3] || (be.cssNumber[s] ? '' : 'px')), ye.clearCloneStyle || '' !== n || 0 !== t.indexOf('background') || (u[t] = 'inherit'), a && 'set' in a && void 0 === (n = a.set(e, n, i)) || (c ? u.setProperty(t, n) : u[t] = n))));
                    }
                },
                css: function (e, t, n, i) {
                    var r, o, a, s = be.camelCase(t);
                    return ht.test(t) || (t = I(s)), a = be.cssHooks[t] || be.cssHooks[s], a && 'get' in a && (r = a.get(e, !0, n)), void 0 === r && (r = $(e, t, i)), 'normal' === r && t in vt && (r = vt[t]), '' === n || n ? (o = parseFloat(r), !0 === n || isFinite(o) ? o || 0 : r) : r;
                }
            }), be.each(['height', 'width'], function (e, t) {
                be.cssHooks[t] = {
                    get: function (e, n, i) {
                        if (n) return !dt.test(be.css(e, 'display')) || e.getClientRects().length && e.getBoundingClientRect().width ? W(e, t, i) : Ge(e, gt, function () {
                            return W(e, t, i);
                        });
                    }, set: function (e, n, i) {
                        var r, o = i && pt(e), a = i && B(e, t, i, 'border-box' === be.css(e, 'boxSizing', !1, o), o);
                        return a && (r = _e.exec(n)) && 'px' !== (r[3] || 'px') && (e.style[t] = n, n = be.css(e, t)), z(e, n, a);
                    }
                };
            }), be.cssHooks.marginLeft = M(ye.reliableMarginLeft, function (e, t) {
                if (t) return (parseFloat($(e, 'marginLeft')) || e.getBoundingClientRect().left - Ge(e, {marginLeft: 0}, function () {
                    return e.getBoundingClientRect().left;
                })) + 'px';
            }), be.each({margin: '', padding: '', border: 'Width'}, function (e, t) {
                be.cssHooks[e + t] = {
                    expand: function (n) {
                        for (var i = 0, r = {}, o = 'string' == typeof n ? n.split(' ') : [n]; i < 4; i++) r[e + Xe[i] + t] = o[i] || o[i - 2] || o[0];
                        return r;
                    }
                }, lt.test(e) || (be.cssHooks[e + t].set = z);
            }), be.fn.extend({
                css: function (e, t) {
                    return Me(this, function (e, t, n) {
                        var i, r, o = {}, a = 0;
                        if (Array.isArray(t)) {
                            for (i = pt(e), r = t.length; a < r; a++) o[t[a]] = be.css(e, t[a], !1, i);
                            return o;
                        }
                        return void 0 !== n ? be.style(e, t, n) : be.css(e, t);
                    }, e, t, arguments.length > 1);
                }
            }), be.Tween = U, U.prototype = {
                constructor: U, init: function (e, t, n, i, r, o) {
                    this.elem = e, this.prop = n, this.easing = r || be.easing._default, this.options = t, this.start = this.now = this.cur(), this.end = i, this.unit = o || (be.cssNumber[n] ? '' : 'px');
                }, cur: function () {
                    var e = U.propHooks[this.prop];
                    return e && e.get ? e.get(this) : U.propHooks._default.get(this);
                }, run: function (e) {
                    var t, n = U.propHooks[this.prop];
                    return this.options.duration ? this.pos = t = be.easing[this.easing](e, this.options.duration * e, 0, 1, this.options.duration) : this.pos = t = e, this.now = (this.end - this.start) * t + this.start, this.options.step && this.options.step.call(this.elem, this.now, this), n && n.set ? n.set(this) : U.propHooks._default.set(this), this;
                }
            }, U.prototype.init.prototype = U.prototype, U.propHooks = {
                _default: {
                    get: function (e) {
                        var t;
                        return 1 !== e.elem.nodeType || null != e.elem[e.prop] && null == e.elem.style[e.prop] ? e.elem[e.prop] : (t = be.css(e.elem, e.prop, ''), t && 'auto' !== t ? t : 0);
                    }, set: function (e) {
                        be.fx.step[e.prop] ? be.fx.step[e.prop](e) : 1 !== e.elem.nodeType || null == e.elem.style[be.cssProps[e.prop]] && !be.cssHooks[e.prop] ? e.elem[e.prop] = e.now : be.style(e.elem, e.prop, e.now + e.unit);
                    }
                }
            }, U.propHooks.scrollTop = U.propHooks.scrollLeft = {
                set: function (e) {
                    e.elem.nodeType && e.elem.parentNode && (e.elem[e.prop] = e.now);
                }
            }, be.easing = {
                linear: function (e) {
                    return e;
                }, swing: function (e) {
                    return .5 - Math.cos(e * Math.PI) / 2;
                }, _default: 'swing'
            }, be.fx = U.prototype.init, be.fx.step = {};
            var xt, bt, wt = /^(?:toggle|show|hide)$/, Tt = /queueHooks$/;
            be.Animation = be.extend(K, {
                tweeners: {
                    '*': [function (e, t) {
                        var n = this.createTween(e, t);
                        return b(n.elem, e, _e.exec(t), n), n;
                    }]
                }, tweener: function (e, t) {
                    be.isFunction(e) ? (t = e, e = ['*']) : e = e.match(He);
                    for (var n, i = 0, r = e.length; i < r; i++) n = e[i], K.tweeners[n] = K.tweeners[n] || [], K.tweeners[n].unshift(t);
                }, prefilters: [V], prefilter: function (e, t) {
                    t ? K.prefilters.unshift(e) : K.prefilters.push(e);
                }
            }), be.speed = function (e, t, n) {
                var i = e && 'object' == typeof e ? be.extend({}, e) : {
                    complete: n || !n && t || be.isFunction(e) && e,
                    duration: e,
                    easing: n && t || t && !be.isFunction(t) && t
                };
                return be.fx.off ? i.duration = 0 : 'number' != typeof i.duration && (i.duration in be.fx.speeds ? i.duration = be.fx.speeds[i.duration] : i.duration = be.fx.speeds._default), null != i.queue && !0 !== i.queue || (i.queue = 'fx'), i.old = i.complete, i.complete = function () {
                    be.isFunction(i.old) && i.old.call(this), i.queue && be.dequeue(this, i.queue);
                }, i;
            }, be.fn.extend({
                fadeTo: function (e, t, n, i) {
                    return this.filter(Ye).css('opacity', 0).show().end().animate({opacity: t}, e, n, i);
                }, animate: function (e, t, n, i) {
                    var r = be.isEmptyObject(e), o = be.speed(t, n, i), a = function () {
                        var t = K(this, be.extend({}, e), o);
                        (r || Ie.get(this, 'finish')) && t.stop(!0);
                    };
                    return a.finish = a, r || !1 === o.queue ? this.each(a) : this.queue(o.queue, a);
                }, stop: function (e, t, n) {
                    var i = function (e) {
                        var t = e.stop;
                        delete e.stop, t(n);
                    };
                    return 'string' != typeof e && (n = t, t = e, e = void 0), t && !1 !== e && this.queue(e || 'fx', []), this.each(function () {
                        var t = !0, r = null != e && e + 'queueHooks', o = be.timers, a = Ie.get(this);
                        if (r) a[r] && a[r].stop && i(a[r]); else for (r in a) a[r] && a[r].stop && Tt.test(r) && i(a[r]);
                        for (r = o.length; r--;) o[r].elem !== this || null != e && o[r].queue !== e || (o[r].anim.stop(n), t = !1, o.splice(r, 1));
                        !t && n || be.dequeue(this, e);
                    });
                }, finish: function (e) {
                    return !1 !== e && (e = e || 'fx'), this.each(function () {
                        var t, n = Ie.get(this), i = n[e + 'queue'], r = n[e + 'queueHooks'], o = be.timers,
                            a = i ? i.length : 0;
                        for (n.finish = !0, be.queue(this, e, []), r && r.stop && r.stop.call(this, !0), t = o.length; t--;) o[t].elem === this && o[t].queue === e && (o[t].anim.stop(!0), o.splice(t, 1));
                        for (t = 0; t < a; t++) i[t] && i[t].finish && i[t].finish.call(this);
                        delete n.finish;
                    });
                }
            }), be.each(['toggle', 'show', 'hide'], function (e, t) {
                var n = be.fn[t];
                be.fn[t] = function (e, i, r) {
                    return null == e || 'boolean' == typeof e ? n.apply(this, arguments) : this.animate(Y(t, !0), e, i, r);
                };
            }), be.each({
                slideDown: Y('show'),
                slideUp: Y('hide'),
                slideToggle: Y('toggle'),
                fadeIn: {opacity: 'show'},
                fadeOut: {opacity: 'hide'},
                fadeToggle: {opacity: 'toggle'}
            }, function (e, t) {
                be.fn[e] = function (e, n, i) {
                    return this.animate(t, e, n, i);
                };
            }), be.timers = [], be.fx.tick = function () {
                var e, t = 0, n = be.timers;
                for (xt = be.now(); t < n.length; t++) (e = n[t])() || n[t] !== e || n.splice(t--, 1);
                n.length || be.fx.stop(), xt = void 0;
            }, be.fx.timer = function (e) {
                be.timers.push(e), be.fx.start();
            }, be.fx.interval = 13, be.fx.start = function () {
                bt || (bt = !0, _());
            }, be.fx.stop = function () {
                bt = null;
            }, be.fx.speeds = {slow: 600, fast: 200, _default: 400}, be.fn.delay = function (e, t) {
                return e = be.fx ? be.fx.speeds[e] || e : e, t = t || 'fx', this.queue(t, function (t, n) {
                    var i = o.setTimeout(t, e);
                    n.stop = function () {
                        o.clearTimeout(i);
                    };
                });
            }, function () {
                var e = se.createElement('input'), t = se.createElement('select'),
                    n = t.appendChild(se.createElement('option'));
                e.type = 'checkbox', ye.checkOn = '' !== e.value, ye.optSelected = n.selected, e = se.createElement('input'), e.value = 't', e.type = 'radio', ye.radioValue = 't' === e.value;
            }();
            var Ct, kt = be.expr.attrHandle;
            be.fn.extend({
                attr: function (e, t) {
                    return Me(this, be.attr, e, t, arguments.length > 1);
                }, removeAttr: function (e) {
                    return this.each(function () {
                        be.removeAttr(this, e);
                    });
                }
            }), be.extend({
                attr: function (e, t, n) {
                    var i, r, o = e.nodeType;
                    if (3 !== o && 8 !== o && 2 !== o) return void 0 === e.getAttribute ? be.prop(e, t, n) : (1 === o && be.isXMLDoc(e) || (r = be.attrHooks[t.toLowerCase()] || (be.expr.match.bool.test(t) ? Ct : void 0)), void 0 !== n ? null === n ? void be.removeAttr(e, t) : r && 'set' in r && void 0 !== (i = r.set(e, n, t)) ? i : (e.setAttribute(t, n + ''), n) : r && 'get' in r && null !== (i = r.get(e, t)) ? i : (i = be.find.attr(e, t), null == i ? void 0 : i));
                }, attrHooks: {
                    type: {
                        set: function (e, t) {
                            if (!ye.radioValue && 'radio' === t && u(e, 'input')) {
                                var n = e.value;
                                return e.setAttribute('type', t), n && (e.value = n), t;
                            }
                        }
                    }
                }, removeAttr: function (e, t) {
                    var n, i = 0, r = t && t.match(He);
                    if (r && 1 === e.nodeType) for (; n = r[i++];) e.removeAttribute(n);
                }
            }), Ct = {
                set: function (e, t, n) {
                    return !1 === t ? be.removeAttr(e, n) : e.setAttribute(n, n), n;
                }
            }, be.each(be.expr.match.bool.source.match(/\w+/g), function (e, t) {
                var n = kt[t] || be.find.attr;
                kt[t] = function (e, t, i) {
                    var r, o, a = t.toLowerCase();
                    return i || (o = kt[a], kt[a] = r, r = null != n(e, t, i) ? a : null, kt[a] = o), r;
                };
            });
            var Et = /^(?:input|select|textarea|button)$/i, jt = /^(?:a|area)$/i;
            be.fn.extend({
                prop: function (e, t) {
                    return Me(this, be.prop, e, t, arguments.length > 1);
                }, removeProp: function (e) {
                    return this.each(function () {
                        delete this[be.propFix[e] || e];
                    });
                }
            }), be.extend({
                prop: function (e, t, n) {
                    var i, r, o = e.nodeType;
                    if (3 !== o && 8 !== o && 2 !== o) return 1 === o && be.isXMLDoc(e) || (t = be.propFix[t] || t, r = be.propHooks[t]), void 0 !== n ? r && 'set' in r && void 0 !== (i = r.set(e, n, t)) ? i : e[t] = n : r && 'get' in r && null !== (i = r.get(e, t)) ? i : e[t];
                }, propHooks: {
                    tabIndex: {
                        get: function (e) {
                            var t = be.find.attr(e, 'tabindex');
                            return t ? parseInt(t, 10) : Et.test(e.nodeName) || jt.test(e.nodeName) && e.href ? 0 : -1;
                        }
                    }
                }, propFix: {for: 'htmlFor', class: 'className'}
            }), ye.optSelected || (be.propHooks.selected = {
                get: function (e) {
                    var t = e.parentNode;
                    return t && t.parentNode && t.parentNode.selectedIndex, null;
                }, set: function (e) {
                    var t = e.parentNode;
                    t && (t.selectedIndex, t.parentNode && t.parentNode.selectedIndex);
                }
            }), be.each(['tabIndex', 'readOnly', 'maxLength', 'cellSpacing', 'cellPadding', 'rowSpan', 'colSpan', 'useMap', 'frameBorder', 'contentEditable'], function () {
                be.propFix[this.toLowerCase()] = this;
            }), be.fn.extend({
                addClass: function (e) {
                    var t, n, i, r, o, a, s, c = 0;
                    if (be.isFunction(e)) return this.each(function (t) {
                        be(this).addClass(e.call(this, t, Z(this)));
                    });
                    if ('string' == typeof e && e) for (t = e.match(He) || []; n = this[c++];) if (r = Z(n), i = 1 === n.nodeType && ' ' + Q(r) + ' ') {
                        for (a = 0; o = t[a++];) i.indexOf(' ' + o + ' ') < 0 && (i += o + ' ');
                        s = Q(i), r !== s && n.setAttribute('class', s);
                    }
                    return this;
                }, removeClass: function (e) {
                    var t, n, i, r, o, a, s, c = 0;
                    if (be.isFunction(e)) return this.each(function (t) {
                        be(this).removeClass(e.call(this, t, Z(this)));
                    });
                    if (!arguments.length) return this.attr('class', '');
                    if ('string' == typeof e && e) for (t = e.match(He) || []; n = this[c++];) if (r = Z(n), i = 1 === n.nodeType && ' ' + Q(r) + ' ') {
                        for (a = 0; o = t[a++];) for (; i.indexOf(" " + o + " ") > -1;) i = i.replace(' ' + o + ' ', ' ');
                        s = Q(i), r !== s && n.setAttribute('class', s);
                    }
                    return this;
                }, toggleClass: function (e, t) {
                    var n = typeof e;
                    return 'boolean' == typeof t && 'string' === n ? t ? this.addClass(e) : this.removeClass(e) : be.isFunction(e) ? this.each(function (n) {
                        be(this).toggleClass(e.call(this, n, Z(this), t), t);
                    }) : this.each(function () {
                        var t, i, r, o;
                        if ('string' === n) for (i = 0, r = be(this), o = e.match(He) || []; t = o[i++];) r.hasClass(t) ? r.removeClass(t) : r.addClass(t); else void 0 !== e && 'boolean' !== n || (t = Z(this), t && Ie.set(this, '__className__', t), this.setAttribute && this.setAttribute('class', t || !1 === e ? '' : Ie.get(this, '__className__') || ''));
                    });
                }, hasClass: function (e) {
                    var t, n, i = 0;
                    for (t = ' ' + e + ' '; n = this[i++];) if (1 === n.nodeType && (' ' + Q(Z(n)) + ' ').indexOf(t) > -1) return !0;
                    return !1;
                }
            });
            var Nt = /\r/g;
            be.fn.extend({
                val: function (e) {
                    var t, n, i, r = this[0];
                    return arguments.length ? (i = be.isFunction(e), this.each(function (n) {
                        var r;
                        1 === this.nodeType && (r = i ? e.call(this, n, be(this).val()) : e, null == r ? r = '' : 'number' == typeof r ? r += '' : Array.isArray(r) && (r = be.map(r, function (e) {
                            return null == e ? '' : e + '';
                        })), (t = be.valHooks[this.type] || be.valHooks[this.nodeName.toLowerCase()]) && 'set' in t && void 0 !== t.set(this, r, 'value') || (this.value = r));
                    })) : r ? (t = be.valHooks[r.type] || be.valHooks[r.nodeName.toLowerCase()], t && 'get' in t && void 0 !== (n = t.get(r, 'value')) ? n : (n = r.value, 'string' == typeof n ? n.replace(Nt, '') : null == n ? '' : n)) : void 0;
                }
            }), be.extend({
                valHooks: {
                    option: {
                        get: function (e) {
                            var t = be.find.attr(e, 'value');
                            return null != t ? t : Q(be.text(e));
                        }
                    }, select: {
                        get: function (e) {
                            var t, n, i, r = e.options, o = e.selectedIndex, a = 'select-one' === e.type,
                                s = a ? null : [], c = a ? o + 1 : r.length;
                            for (i = o < 0 ? c : a ? o : 0; i < c; i++) if (n = r[i], (n.selected || i === o) && !n.disabled && (!n.parentNode.disabled || !u(n.parentNode, 'optgroup'))) {
                                if (t = be(n).val(), a) return t;
                                s.push(t);
                            }
                            return s;
                        }, set: function (e, t) {
                            for (var n, i, r = e.options, o = be.makeArray(t), a = r.length; a--;) i = r[a], (i.selected = be.inArray(be.valHooks.option.get(i), o) > -1) && (n = !0);
                            return n || (e.selectedIndex = -1), o;
                        }
                    }
                }
            }), be.each(['radio', 'checkbox'], function () {
                be.valHooks[this] = {
                    set: function (e, t) {
                        if (Array.isArray(t)) return e.checked = be.inArray(be(e).val(), t) > -1;
                    }
                }, ye.checkOn || (be.valHooks[this].get = function (e) {
                    return null === e.getAttribute('value') ? 'on' : e.value;
                });
            });
            var St = /^(?:focusinfocus|focusoutblur)$/;
            be.extend(be.event, {
                trigger: function (e, t, n, i) {
                    var r, a, s, c, u, l, f, p = [n || se], d = ge.call(e, 'type') ? e.type : e,
                        h = ge.call(e, 'namespace') ? e.namespace.split('.') : [];
                    if (a = s = n = n || se, 3 !== n.nodeType && 8 !== n.nodeType && !St.test(d + be.event.triggered) && (d.indexOf('.') > -1 && (h = d.split('.'), d = h.shift(), h.sort()), u = d.indexOf(':') < 0 && 'on' + d, e = e[be.expando] ? e : new be.Event(d, 'object' == typeof e && e), e.isTrigger = i ? 2 : 3, e.namespace = h.join('.'), e.rnamespace = e.namespace ? new RegExp('(^|\\.)' + h.join('\\.(?:.*\\.|)') + '(\\.|$)') : null, e.result = void 0, e.target || (e.target = n), t = null == t ? [e] : be.makeArray(t, [e]), f = be.event.special[d] || {}, i || !f.trigger || !1 !== f.trigger.apply(n, t))) {
                        if (!i && !f.noBubble && !be.isWindow(n)) {
                            for (c = f.delegateType || d, St.test(c + d) || (a = a.parentNode); a; a = a.parentNode) p.push(a), s = a;
                            s === (n.ownerDocument || se) && p.push(s.defaultView || s.parentWindow || o);
                        }
                        for (r = 0; (a = p[r++]) && !e.isPropagationStopped();) e.type = r > 1 ? c : f.bindType || d, l = (Ie.get(a, 'events') || {})[e.type] && Ie.get(a, 'handle'), l && l.apply(a, t), (l = u && a[u]) && l.apply && Re(a) && (e.result = l.apply(a, t), !1 === e.result && e.preventDefault());
                        return e.type = d, i || e.isDefaultPrevented() || f._default && !1 !== f._default.apply(p.pop(), t) || !Re(n) || u && be.isFunction(n[d]) && !be.isWindow(n) && (s = n[u], s && (n[u] = null), be.event.triggered = d, n[d](), be.event.triggered = void 0, s && (n[u] = s)), e.result;
                    }
                }, simulate: function (e, t, n) {
                    var i = be.extend(new be.Event, n, {type: e, isSimulated: !0});
                    be.event.trigger(i, null, t);
                }
            }), be.fn.extend({
                trigger: function (e, t) {
                    return this.each(function () {
                        be.event.trigger(e, t, this);
                    });
                }, triggerHandler: function (e, t) {
                    var n = this[0];
                    if (n) return be.event.trigger(e, t, n, !0);
                }
            }), be.each('blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu'.split(' '), function (e, t) {
                be.fn[t] = function (e, n) {
                    return arguments.length > 0 ? this.on(t, null, e, n) : this.trigger(t);
                };
            }), be.fn.extend({
                hover: function (e, t) {
                    return this.mouseenter(e).mouseleave(t || e);
                }
            }), ye.focusin = 'onfocusin' in o, ye.focusin || be.each({
                focus: 'focusin',
                blur: 'focusout'
            }, function (e, t) {
                var n = function (e) {
                    be.event.simulate(t, e.target, be.event.fix(e));
                };
                be.event.special[t] = {
                    setup: function () {
                        var i = this.ownerDocument || this, r = Ie.access(i, t);
                        r || i.addEventListener(e, n, !0), Ie.access(i, t, (r || 0) + 1);
                    }, teardown: function () {
                        var i = this.ownerDocument || this, r = Ie.access(i, t) - 1;
                        r ? Ie.access(i, t, r) : (i.removeEventListener(e, n, !0), Ie.remove(i, t));
                    }
                };
            });
            var Dt = o.location, At = be.now(), Lt = /\?/;
            be.parseXML = function (e) {
                var t;
                if (!e || 'string' != typeof e) return null;
                try {
                    t = (new o.DOMParser).parseFromString(e, 'text/xml');
                } catch (e) {
                    t = void 0;
                }
                return t && !t.getElementsByTagName('parsererror').length || be.error('Invalid XML: ' + e), t;
            };
            var qt = /\[\]$/, Ot = /\r?\n/g, Pt = /^(?:submit|button|image|reset|file)$/i,
                Ht = /^(?:input|select|textarea|keygen)/i;
            be.param = function (e, t) {
                var n, i = [], r = function (e, t) {
                    var n = be.isFunction(t) ? t() : t;
                    i[i.length] = encodeURIComponent(e) + '=' + encodeURIComponent(null == n ? '' : n);
                };
                if (Array.isArray(e) || e.jquery && !be.isPlainObject(e)) be.each(e, function () {
                    r(this.name, this.value);
                }); else for (n in e) ee(n, e[n], t, r);
                return i.join('&');
            }, be.fn.extend({
                serialize: function () {
                    return be.param(this.serializeArray());
                }, serializeArray: function () {
                    return this.map(function () {
                        var e = be.prop(this, 'elements');
                        return e ? be.makeArray(e) : this;
                    }).filter(function () {
                        var e = this.type;
                        return this.name && !be(this).is(':disabled') && Ht.test(this.nodeName) && !Pt.test(e) && (this.checked || !Je.test(e));
                    }).map(function (e, t) {
                        var n = be(this).val();
                        return null == n ? null : Array.isArray(n) ? be.map(n, function (e) {
                            return {name: t.name, value: e.replace(Ot, '\r\n')};
                        }) : {name: t.name, value: n.replace(Ot, '\r\n')};
                    }).get();
                }
            });
            var Ft = /%20/g, $t = /#.*$/, Mt = /([?&])_=[^&]*/, Rt = /^(.*?):[ \t]*([^\r\n]*)$/gm,
                It = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/, zt = /^(?:GET|HEAD)$/, Bt = /^\/\//,
                Wt = {}, Ut = {}, _t = '*/'.concat('*'), Xt = se.createElement('a');
            Xt.href = Dt.href, be.extend({
                active: 0,
                lastModified: {},
                etag: {},
                ajaxSettings: {
                    url: Dt.href,
                    type: 'GET',
                    isLocal: It.test(Dt.protocol),
                    global: !0,
                    processData: !0,
                    async: !0,
                    contentType: 'application/x-www-form-urlencoded; charset=UTF-8',
                    accepts: {
                        '*': _t,
                        text: 'text/plain',
                        html: 'text/html',
                        xml: 'application/xml, text/xml',
                        json: 'application/json, text/javascript'
                    },
                    contents: {xml: /\bxml\b/, html: /\bhtml/, json: /\bjson\b/},
                    responseFields: {xml: 'responseXML', text: 'responseText', json: 'responseJSON'},
                    converters: {'* text': String, 'text html': !0, 'text json': JSON.parse, 'text xml': be.parseXML},
                    flatOptions: {url: !0, context: !0}
                },
                ajaxSetup: function (e, t) {
                    return t ? ie(ie(e, be.ajaxSettings), t) : ie(be.ajaxSettings, e);
                },
                ajaxPrefilter: te(Wt),
                ajaxTransport: te(Ut),
                ajax: function (e, t) {
                    function n(e, t, n, s) {
                        var u, p, d, b, w, T = t;
                        l || (l = !0, c && o.clearTimeout(c), i = void 0, a = s || '', C.readyState = e > 0 ? 4 : 0, u = e >= 200 && e < 300 || 304 === e, n && (b = re(h, C, n)), b = oe(h, b, C, u), u ? (h.ifModified && (w = C.getResponseHeader('Last-Modified'), w && (be.lastModified[r] = w), (w = C.getResponseHeader('etag')) && (be.etag[r] = w)), 204 === e || 'HEAD' === h.type ? T = 'nocontent' : 304 === e ? T = 'notmodified' : (T = b.state, p = b.data, d = b.error, u = !d)) : (d = T, !e && T || (T = 'error', e < 0 && (e = 0))), C.status = e, C.statusText = (t || T) + '', u ? m.resolveWith(g, [p, T, C]) : m.rejectWith(g, [C, T, d]), C.statusCode(x), x = void 0, f && v.trigger(u ? 'ajaxSuccess' : 'ajaxError', [C, h, u ? p : d]), y.fireWith(g, [C, T]), f && (v.trigger('ajaxComplete', [C, h]), --be.active || be.event.trigger('ajaxStop')));
                    }

                    'object' == typeof e && (t = e, e = void 0), t = t || {};
                    var i, r, a, s, c, u, l, f, p, d, h = be.ajaxSetup({}, t), g = h.context || h,
                        v = h.context && (g.nodeType || g.jquery) ? be(g) : be.event, m = be.Deferred(),
                        y = be.Callbacks('once memory'), x = h.statusCode || {}, b = {}, w = {}, T = 'canceled', C = {
                            readyState: 0, getResponseHeader: function (e) {
                                var t;
                                if (l) {
                                    if (!s) for (s = {}; t = Rt.exec(a);) s[t[1].toLowerCase()] = t[2];
                                    t = s[e.toLowerCase()];
                                }
                                return null == t ? null : t;
                            }, getAllResponseHeaders: function () {
                                return l ? a : null;
                            }, setRequestHeader: function (e, t) {
                                return null == l && (e = w[e.toLowerCase()] = w[e.toLowerCase()] || e, b[e] = t), this;
                            }, overrideMimeType: function (e) {
                                return null == l && (h.mimeType = e), this;
                            }, statusCode: function (e) {
                                var t;
                                if (e) if (l) C.always(e[C.status]); else for (t in e) x[t] = [x[t], e[t]];
                                return this;
                            }, abort: function (e) {
                                var t = e || T;
                                return i && i.abort(t), n(0, t), this;
                            }
                        };
                    if (m.promise(C), h.url = ((e || h.url || Dt.href) + '').replace(Bt, Dt.protocol + '//'), h.type = t.method || t.type || h.method || h.type, h.dataTypes = (h.dataType || '*').toLowerCase().match(He) || [''], null == h.crossDomain) {
                        u = se.createElement('a');
                        try {
                            u.href = h.url, u.href = u.href, h.crossDomain = Xt.protocol + '//' + Xt.host != u.protocol + '//' + u.host;
                        } catch (e) {
                            h.crossDomain = !0;
                        }
                    }
                    if (h.data && h.processData && 'string' != typeof h.data && (h.data = be.param(h.data, h.traditional)), ne(Wt, h, t, C), l) return C;
                    f = be.event && h.global, f && 0 == be.active++ && be.event.trigger('ajaxStart'), h.type = h.type.toUpperCase(), h.hasContent = !zt.test(h.type), r = h.url.replace($t, ''), h.hasContent ? h.data && h.processData && 0 === (h.contentType || '').indexOf('application/x-www-form-urlencoded') && (h.data = h.data.replace(Ft, '+')) : (d = h.url.slice(r.length), h.data && (r += (Lt.test(r) ? '&' : '?') + h.data, delete h.data), !1 === h.cache && (r = r.replace(Mt, '$1'), d = (Lt.test(r) ? '&' : '?') + '_=' + At++ + d), h.url = r + d), h.ifModified && (be.lastModified[r] && C.setRequestHeader('If-Modified-Since', be.lastModified[r]), be.etag[r] && C.setRequestHeader('If-None-Match', be.etag[r])), (h.data && h.hasContent && !1 !== h.contentType || t.contentType) && C.setRequestHeader('Content-Type', h.contentType), C.setRequestHeader('Accept', h.dataTypes[0] && h.accepts[h.dataTypes[0]] ? h.accepts[h.dataTypes[0]] + ('*' !== h.dataTypes[0] ? ', ' + _t + '; q=0.01' : '') : h.accepts['*']);
                    for (p in h.headers) C.setRequestHeader(p, h.headers[p]);
                    if (h.beforeSend && (!1 === h.beforeSend.call(g, C, h) || l)) return C.abort();
                    if (T = 'abort', y.add(h.complete), C.done(h.success), C.fail(h.error), i = ne(Ut, h, t, C)) {
                        if (C.readyState = 1, f && v.trigger('ajaxSend', [C, h]), l) return C;
                        h.async && h.timeout > 0 && (c = o.setTimeout(function () {
                            C.abort('timeout');
                        }, h.timeout));
                        try {
                            l = !1, i.send(b, n);
                        } catch (e) {
                            if (l) throw e;
                            n(-1, e);
                        }
                    } else n(-1, 'No Transport');
                    return C;
                },
                getJSON: function (e, t, n) {
                    return be.get(e, t, n, 'json');
                },
                getScript: function (e, t) {
                    return be.get(e, void 0, t, 'script');
                }
            }), be.each(['get', 'post'], function (e, t) {
                be[t] = function (e, n, i, r) {
                    return be.isFunction(n) && (r = r || i, i = n, n = void 0), be.ajax(be.extend({
                        url: e,
                        type: t,
                        dataType: r,
                        data: n,
                        success: i
                    }, be.isPlainObject(e) && e));
                };
            }), be._evalUrl = function (e) {
                return be.ajax({url: e, type: 'GET', dataType: 'script', cache: !0, async: !1, global: !1, throws: !0});
            }, be.fn.extend({
                wrapAll: function (e) {
                    var t;
                    return this[0] && (be.isFunction(e) && (e = e.call(this[0])), t = be(e, this[0].ownerDocument).eq(0).clone(!0), this[0].parentNode && t.insertBefore(this[0]), t.map(function () {
                        for (var e = this; e.firstElementChild;) e = e.firstElementChild;
                        return e;
                    }).append(this)), this;
                }, wrapInner: function (e) {
                    return be.isFunction(e) ? this.each(function (t) {
                        be(this).wrapInner(e.call(this, t));
                    }) : this.each(function () {
                        var t = be(this), n = t.contents();
                        n.length ? n.wrapAll(e) : t.append(e);
                    });
                }, wrap: function (e) {
                    var t = be.isFunction(e);
                    return this.each(function (n) {
                        be(this).wrapAll(t ? e.call(this, n) : e);
                    });
                }, unwrap: function (e) {
                    return this.parent(e).not('body').each(function () {
                        be(this).replaceWith(this.childNodes);
                    }), this;
                }
            }), be.expr.pseudos.hidden = function (e) {
                return !be.expr.pseudos.visible(e);
            }, be.expr.pseudos.visible = function (e) {
                return !!(e.offsetWidth || e.offsetHeight || e.getClientRects().length);
            }, be.ajaxSettings.xhr = function () {
                try {
                    return new o.XMLHttpRequest;
                } catch (e) {
                }
            };
            var Yt = {0: 200, 1223: 204}, Gt = be.ajaxSettings.xhr();
            ye.cors = !!Gt && 'withCredentials' in Gt, ye.ajax = Gt = !!Gt, be.ajaxTransport(function (e) {
                var t, n;
                if (ye.cors || Gt && !e.crossDomain) return {
                    send: function (i, r) {
                        var a, s = e.xhr();
                        if (s.open(e.type, e.url, e.async, e.username, e.password), e.xhrFields) for (a in e.xhrFields) s[a] = e.xhrFields[a];
                        e.mimeType && s.overrideMimeType && s.overrideMimeType(e.mimeType), e.crossDomain || i['X-Requested-With'] || (i['X-Requested-With'] = 'XMLHttpRequest');
                        for (a in i) s.setRequestHeader(a, i[a]);
                        t = function (e) {
                            return function () {
                                t && (t = n = s.onload = s.onerror = s.onabort = s.onreadystatechange = null, 'abort' === e ? s.abort() : 'error' === e ? 'number' != typeof s.status ? r(0, 'error') : r(s.status, s.statusText) : r(Yt[s.status] || s.status, s.statusText, 'text' !== (s.responseType || 'text') || 'string' != typeof s.responseText ? {binary: s.response} : {text: s.responseText}, s.getAllResponseHeaders()));
                            };
                        }, s.onload = t(), n = s.onerror = t('error'), void 0 !== s.onabort ? s.onabort = n : s.onreadystatechange = function () {
                            4 === s.readyState && o.setTimeout(function () {
                                t && n();
                            });
                        }, t = t('abort');
                        try {
                            s.send(e.hasContent && e.data || null);
                        } catch (e) {
                            if (t) throw e;
                        }
                    }, abort: function () {
                        t && t();
                    }
                };
            }), be.ajaxPrefilter(function (e) {
                e.crossDomain && (e.contents.script = !1);
            }), be.ajaxSetup({
                accepts: {script: 'text/javascript, application/javascript, application/ecmascript, application/x-ecmascript'},
                contents: {script: /\b(?:java|ecma)script\b/},
                converters: {
                    'text script': function (e) {
                        return be.globalEval(e), e;
                    }
                }
            }), be.ajaxPrefilter('script', function (e) {
                void 0 === e.cache && (e.cache = !1), e.crossDomain && (e.type = 'GET');
            }), be.ajaxTransport('script', function (e) {
                if (e.crossDomain) {
                    var t, n;
                    return {
                        send: function (i, r) {
                            t = be('<script>').prop({
                                charset: e.scriptCharset,
                                src: e.url
                            }).on('load error', n = function (e) {
                                t.remove(), n = null, e && r('error' === e.type ? 404 : 200, e.type);
                            }), se.head.appendChild(t[0]);
                        }, abort: function () {
                            n && n();
                        }
                    };
                }
            });
            var Vt = [], Jt = /(=)\?(?=&|$)|\?\?/;
            be.ajaxSetup({
                jsonp: 'callback', jsonpCallback: function () {
                    var e = Vt.pop() || be.expando + '_' + At++;
                    return this[e] = !0, e;
                }
            }), be.ajaxPrefilter('json jsonp', function (e, t, n) {
                var i, r, a,
                    s = !1 !== e.jsonp && (Jt.test(e.url) ? 'url' : 'string' == typeof e.data && 0 === (e.contentType || '').indexOf('application/x-www-form-urlencoded') && Jt.test(e.data) && 'data');
                if (s || 'jsonp' === e.dataTypes[0]) return i = e.jsonpCallback = be.isFunction(e.jsonpCallback) ? e.jsonpCallback() : e.jsonpCallback, s ? e[s] = e[s].replace(Jt, '$1' + i) : !1 !== e.jsonp && (e.url += (Lt.test(e.url) ? '&' : '?') + e.jsonp + '=' + i), e.converters['script json'] = function () {
                    return a || be.error(i + ' was not called'), a[0];
                }, e.dataTypes[0] = 'json', r = o[i], o[i] = function () {
                    a = arguments;
                }, n.always(function () {
                    void 0 === r ? be(o).removeProp(i) : o[i] = r, e[i] && (e.jsonpCallback = t.jsonpCallback, Vt.push(i)), a && be.isFunction(r) && r(a[0]), a = r = void 0;
                }), 'script';
            }), ye.createHTMLDocument = function () {
                var e = se.implementation.createHTMLDocument('').body;
                return e.innerHTML = '<form></form><form></form>', 2 === e.childNodes.length;
            }(), be.parseHTML = function (e, t, n) {
                if ('string' != typeof e) return [];
                'boolean' == typeof t && (n = t, t = !1);
                var i, r, o;
                return t || (ye.createHTMLDocument ? (t = se.implementation.createHTMLDocument(''), i = t.createElement('base'), i.href = se.location.href, t.head.appendChild(i)) : t = se), r = De.exec(e), o = !n && [], r ? [t.createElement(r[1])] : (r = E([e], t, o), o && o.length && be(o).remove(), be.merge([], r.childNodes));
            }, be.fn.load = function (e, t, n) {
                var i, r, o, a = this, s = e.indexOf(' ');
                return s > -1 && (i = Q(e.slice(s)), e = e.slice(0, s)), be.isFunction(t) ? (n = t, t = void 0) : t && 'object' == typeof t && (r = 'POST'), a.length > 0 && be.ajax({
                    url: e,
                    type: r || 'GET',
                    dataType: 'html',
                    data: t
                }).done(function (e) {
                    o = arguments, a.html(i ? be('<div>').append(be.parseHTML(e)).find(i) : e);
                }).always(n && function (e, t) {
                    a.each(function () {
                        n.apply(this, o || [e.responseText, t, e]);
                    });
                }), this;
            }, be.each(['ajaxStart', 'ajaxStop', 'ajaxComplete', 'ajaxError', 'ajaxSuccess', 'ajaxSend'], function (e, t) {
                be.fn[t] = function (e) {
                    return this.on(t, e);
                };
            }), be.expr.pseudos.animated = function (e) {
                return be.grep(be.timers, function (t) {
                    return e === t.elem;
                }).length;
            }, be.offset = {
                setOffset: function (e, t, n) {
                    var i, r, o, a, s, c, u, l = be.css(e, 'position'), f = be(e), p = {};
                    'static' === l && (e.style.position = 'relative'), s = f.offset(), o = be.css(e, 'top'), c = be.css(e, 'left'), u = ('absolute' === l || 'fixed' === l) && (o + c).indexOf('auto') > -1, u ? (i = f.position(), a = i.top, r = i.left) : (a = parseFloat(o) || 0, r = parseFloat(c) || 0), be.isFunction(t) && (t = t.call(e, n, be.extend({}, s))), null != t.top && (p.top = t.top - s.top + a), null != t.left && (p.left = t.left - s.left + r), 'using' in t ? t.using.call(e, p) : f.css(p);
                }
            }, be.fn.extend({
                offset: function (e) {
                    if (arguments.length) return void 0 === e ? this : this.each(function (t) {
                        be.offset.setOffset(this, e, t);
                    });
                    var t, n, i, r, o = this[0];
                    return o ? o.getClientRects().length ? (i = o.getBoundingClientRect(), t = o.ownerDocument, n = t.documentElement, r = t.defaultView, {
                        top: i.top + r.pageYOffset - n.clientTop,
                        left: i.left + r.pageXOffset - n.clientLeft
                    }) : {top: 0, left: 0} : void 0;
                }, position: function () {
                    if (this[0]) {
                        var e, t, n = this[0], i = {top: 0, left: 0};
                        return 'fixed' === be.css(n, 'position') ? t = n.getBoundingClientRect() : (e = this.offsetParent(), t = this.offset(), u(e[0], 'html') || (i = e.offset()), i = {
                            top: i.top + be.css(e[0], 'borderTopWidth', !0),
                            left: i.left + be.css(e[0], 'borderLeftWidth', !0)
                        }), {
                            top: t.top - i.top - be.css(n, 'marginTop', !0),
                            left: t.left - i.left - be.css(n, 'marginLeft', !0)
                        };
                    }
                }, offsetParent: function () {
                    return this.map(function () {
                        for (var e = this.offsetParent; e && "static" === be.css(e, "position");) e = e.offsetParent;
                        return e || tt;
                    });
                }
            }), be.each({scrollLeft: 'pageXOffset', scrollTop: 'pageYOffset'}, function (e, t) {
                var n = 'pageYOffset' === t;
                be.fn[e] = function (i) {
                    return Me(this, function (e, i, r) {
                        var o;
                        return be.isWindow(e) ? o = e : 9 === e.nodeType && (o = e.defaultView), void 0 === r ? o ? o[t] : e[i] : void(o ? o.scrollTo(n ? o.pageXOffset : r, n ? r : o.pageYOffset) : e[i] = r);
                    }, e, i, arguments.length);
                };
            }), be.each(['top', 'left'], function (e, t) {
                be.cssHooks[t] = M(ye.pixelPosition, function (e, n) {
                    if (n) return n = $(e, t), ft.test(n) ? be(e).position()[t] + 'px' : n;
                });
            }), be.each({Height: 'height', Width: 'width'}, function (e, t) {
                be.each({padding: 'inner' + e, content: t, '': 'outer' + e}, function (n, i) {
                    be.fn[i] = function (r, o) {
                        var a = arguments.length && (n || 'boolean' != typeof r),
                            s = n || (!0 === r || !0 === o ? 'margin' : 'border');
                        return Me(this, function (t, n, r) {
                            var o;
                            return be.isWindow(t) ? 0 === i.indexOf('outer') ? t['inner' + e] : t.document.documentElement['client' + e] : 9 === t.nodeType ? (o = t.documentElement, Math.max(t.body['scroll' + e], o['scroll' + e], t.body['offset' + e], o['offset' + e], o['client' + e])) : void 0 === r ? be.css(t, n, s) : be.style(t, n, r, s);
                        }, t, a ? r : void 0, a);
                    };
                });
            }), be.fn.extend({
                bind: function (e, t, n) {
                    return this.on(e, null, t, n);
                }, unbind: function (e, t) {
                    return this.off(e, null, t);
                }, delegate: function (e, t, n, i) {
                    return this.on(t, e, n, i);
                }, undelegate: function (e, t, n) {
                    return 1 === arguments.length ? this.off(e, '**') : this.off(t, e || '**', n);
                }
            }), be.holdReady = function (e) {
                e ? be.readyWait++ : be.ready(!0);
            }, be.isArray = Array.isArray, be.parseJSON = JSON.parse, be.nodeName = u, n(261) && (i = [], void 0 !== (r = function () {
                return be;
            }.apply(t, i)) && (e.exports = r));
            var Kt = o.jQuery, Qt = o.$;
            return be.noConflict = function (e) {
                return o.$ === be && (o.$ = Qt), e && o.jQuery === be && (o.jQuery = Kt), be;
            }, a || (o.jQuery = o.$ = be), be;
        });
    }, 1: function (e, t, n) {
        n(24), n(178), n(180), n(179), n(177);
    }, 11: function (e, t, n) {
        (function (e) {
            var t = n(12), i = n(3);
            e(function () {
                e('#back-off').on('tap', function (e) {
                    e.preventDefault(), e.stopPropagation();
                    var n = document.referrer;
                    window.history.length < 1 || !n || -1 === n.indexOf(window.location.host) ? window.location.href = t.prefix + i.getCity() : window.history.go(-1);
                });
            });
        }).call(t, n(0));
    }, 12: function (e, t, n) {
        e.exports = {prefix: '/', apiPrefix: '/'};
    }, 13: function (e, t, n) {
        (function (e) {
            e(function () {
                var t = e('#overlay'), n = e('#navigate-body'), i = e('#menu');
                t.on('touchmove.navigate', function (e) {
                    e.preventDefault();
                }), n.on('touchmove', function (e) {
                    e.preventDefault();
                }), i.on('tap', function (e) {
                    e.preventDefault(), e.stopPropagation(), t.show(), n.translate({duration: .3, value: 0});
                }), t.on('tap.navigate', function (e) {
                    e.preventDefault(), e.stopPropagation(), n.translate({
                        duration: .3,
                        value: '100%',
                        callback: function () {
                            t.hide();
                        }
                    });
                });
            });
        }).call(t, n(0));
    }, 14: function (e, t, n) {
        (function (e) {
            e(function () {
                function t(e) {
                    i.show(), r.removeClass('hide'), s.addClass('hide').eq(e).removeClass('hide'), a.find('.items').removeClass('current').eq(e).addClass('current');
                }

                function n() {
                    r.addClass('hide'), s.addClass('hide'), i.hide();
                }

                var i = e('#overlay'), r = e('#filter-layer'), o = e('#filter-body'), a = e('#filter-fixed'),
                    s = r.find('.filter-list');
                i.on('touchmove.filter', function (e) {
                    e.preventDefault();
                }), r.on('touchmove.filter', function (e) {
                    e.preventDefault();
                }), i.on('tap.filter', function (e) {
                    e.preventDefault(), e.stopPropagation(), n();
                }), a.on('tap', '.items', function (i) {
                    i.preventDefault(), i.stopPropagation(), e(this).hasClass('current') ? n() : t(e(this).index());
                }), o.on('tap', '.items', function (n) {
                    n.preventDefault(), n.stopPropagation(), t(e(this).index());
                }), s.on('tap', '.content .items', function (t) {
                    t.preventDefault(), t.stopPropagation(), e(this).addClass('current').siblings().removeClass('current');
                }), s.on('tap', '.content .js-menu', function (t) {
                    t.preventDefault(), t.stopPropagation(), e('.js-level').addClass('hide'), e('.js-level').find('.items').removeClass('current'), e('#level' + e(this).data('areaid')).removeClass('hide');
                }), s.on('tap.filter', '.content .js-link', function (t) {
                    t.preventDefault(), t.stopPropagation();
                    var i = e(this).data('text'), r = e(this).closest('.filter-list').index() - 1,
                        a = o.find('.items').eq(r);
                    a.find('.txt').text(i), a.find('.txt').data('text') === i ? a.removeClass('current') : a.addClass('current'), n();
                });
            });
        }).call(t, n(0));
    }, 175: function (e, t) {
        e.exports = function (e) {
            return '';
        };
    }, 177: function (e, t, n) {
        (function (e) {
            !function (e, t) {
                'use strict';

                function n() {
                    var t = this;
                    this.$el.each(function (n) {
                        var i = e(this);
                        if (i.data('src') && i.offset().top < e(document).scrollTop() + e(window).height() * t.opts.multiple) {
                            var r = new Image;
                            r.src = i.data('src'), r.onload = function () {
                                i.attr('src', this.src), i.removeAttr(t.opts.attrName), t.opts.callback && e.isFunction(t.opts.callback) && t.opts.callback(i, this.naturalWidth, this.naturalHeight);
                            }, r.onerror = function () {
                                if (!i.data('error')) throw'picture loading error';
                                i.attr('src', i.data('error')), i.removeAttr(t.opts.attrName);
                            };
                        }
                    });
                }

                function i(t, i) {
                    this.$el = t, this.opts = e.extend({}, o, i), n.call(this);
                }

                function r(t) {
                    return new i(e(this), t);
                }

                var o = {attrName: 'lazyload', multiple: 1, callback: null};
                e.fn.lazyload = r, e(function () {
                    var t;
                    e('img[lazyload]').lazyload(), e(document).on('scroll.lazyload', function () {
                        t && clearTimeout(t), t = setTimeout(function () {
                            e('img[lazyload]').lazyload();
                        }, 30);
                    });
                });
            }(e);
        }).call(t, n(0));
    }, 178: function (e, t, n) {
        (function (e) {
            !function (e, t) {
                'use strict';

                function n() {
                    var t = this, n = ['-webkit-', '-moz-', '-ms-', '-o-'];
                    e.each(this.options, function (i, r) {
                        var o = '{';
                        e.each(n, function (e) {
                            o += '"' + this[e] + i + '":"' + r + '",';
                        }), o = o.substr(0, o.length - 1) + '}', e.extend(t.options, e.parseJSON(o));
                    }), this.$el.css(this.options);
                }

                function i(e, t) {
                    this.$el = e, this.options = t, n.call(this);
                }

                function r(t) {
                    if ('object' != typeof t) throw'arguments are not object';
                    return new i(e(this), t);
                }

                e.fn.prefix = r;
            }(e);
        }).call(t, n(0));
    }, 179: function (e, t, n) {
        (function (e) {
            !function (e, t) {
                'use strict';

                function n() {
                    function t() {
                        var t = 0;
                        return 'horizontal' === n.opts.direction ? (n.$child.children().each(function () {
                            t += e(this).outerWidth(!0);
                        }), n.$el.width() - t) : (n.$child.children().each(function () {
                            t += e(this).outerHeight(!0);
                        }), n.$el.height() - t);
                    }

                    var n = this, i = {x: 0, y: 0, t: 0}, r = {x: 0, y: 0, t: 0}, o = !0, a = 'horizontal', s = !1,
                        c = 0;
                    this.$el.on('touchstart', function (r) {
                        e.extend(i, {
                            x: r.originalEvent.touches[0].pageX,
                            y: r.originalEvent.touches[0].pageY,
                            t: (new Date).getTime()
                        }), n.$child.translate({direction: n.opts.direction, value: n.opts.value}), c = t();
                    }), this.$el.on('touchmove', function (t) {
                        if (!(c >= 0) && (e.extend(r, {
                            x: t.originalEvent.touches[0].pageX,
                            y: t.originalEvent.touches[0].pageY,
                            t: (new Date).getTime()
                        }), o && Math.abs(r.x - i.x) > 5 ? (o = !1, a = 'horizontal') : o && Math.abs(r.y - i.y) > 5 && (o = !1, a = 'vertical'), 'horizontal' !== n.opts.direction || 'horizontal' === n.opts.direction && 'horizontal' === a)) {
                            t.preventDefault(), s = !0;
                            var u = 'horizontal' === n.opts.direction ? r.x - i.x : r.y - i.y, l = n.opts.value + u;
                            l > 0 ? l /= 3 : l < c && (l = (l - c) / 3 + c), n.$child.translate({
                                direction: n.opts.direction,
                                value: l
                            }), n.opts.callback && e.isFunction(n.opts.callback) && n.opts.callback(l);
                        }
                    }), this.$el.on('touchend', function (t) {
                        if (o = !0, s) {
                            s = !1;
                            var a = 'horizontal' === n.opts.direction ? r.x - i.x : r.y - i.y, u = a / (r.t - i.t),
                                l = 300 * u / 2, f = n.opts.value + a + l;
                            f > 0 ? f = 0 : f < c && (f = c), n.$child.translate({
                                duration: .3,
                                direction: n.opts.direction,
                                value: f
                            }), n.opts.value = f, n.opts.callback && e.isFunction(n.opts.callback) && n.opts.callback(f);
                        }
                    });
                }

                function i(t, i) {
                    this.$el = t, this.opts = e.extend({}, o, i), this.$child = this.$el.children(), this.setPosition(this.opts.value), n.call(this);
                }

                function r(t) {
                    return new i(e(this), t);
                }

                var o = {direction: 'horizontal', value: 0, callback: null};
                i.prototype.setPosition = function (e) {
                    this.opts.value = e, this.$child.translate({direction: this.opts.direction, value: this.opts.value});
                }, e.fn.slide = r, e(function () {
                    e('[js-plugin="slide"]').each(function (t, n) {
                        e(this).slide({direction: e(this).data('direction'), value: e(this).data('value')});
                    });
                });
            }(e);
        }).call(t, n(0));
    }, 180: function (e, t, n) {
        (function (e) {
            !function (e, t) {
                'use strict';

                function n() {
                    var t = '';
                    t = 'number' == typeof this.opts.value ? 'horizontal' === this.opts.direction ? this.opts.value + 'px,0,0' : '0,' + this.opts.value + 'px,0' : 'horizontal' === this.opts.direction ? this.opts.value + ',0,0' : '0,' + this.opts.value + ',0', this.$el.prefix({
                        'transition-property': 'all',
                        'transition-duration': this.opts.duration + 's',
                        'transition-timing-function': this.opts.timing,
                        transform: 'translate3d(' + t + ')'
                    }), this.opts.callback && e.isFunction(this.opts.callback) && setTimeout(this.opts.callback, 300);
                }

                function i(t, i) {
                    this.$el = t, this.opts = e.extend({}, o, i), n.call(this);
                }

                function r(t) {
                    return new i(e(this), t);
                }

                var o = {direction: 'horizontal', duration: 0, timing: 'ease', value: 0, callback: null};
                e.fn.translate = r;
            }(e);
        }).call(t, n(0));
    }, 2: function (e, t, n) {
        (function (t) {
            function i(e) {
                t.ajax({
                    url: r.apiPrefix + o.getCity() + e.url,
                    type: e.type || 'GET',
                    dataType: 'json',
                    data: e.data,
                    beforeSend: t.isFunction(e.beforeSend) && e.beforeSend()
                }).then(function (n) {
                    'C0000' === n.status ? e.callback && t.isFunction(e.callback) && e.callback('success', n.result) : e.callback && t.isFunction(e.callback) && e.callback('error', n.message);
                }, function (n) {
                    e.callback && t.isFunction(e.callback) && e.callback('error', '系统错误！');
                });
            }

            var r = n(12), o = n(3);
            e.exports = i;
        }).call(t, n(0));
    }, 24: function (e, t, n) {
        (function (e) {
            !function (e, t) {
                'use strict';
                var n = {start: 'touchstart', end: 'touchend'};
                e.event.special.tap = {
                    setup: function () {
                        e(this).off('click').on(n.start + ' ' + n.end, function (e) {
                            n.e = e.originalEvent.changedTouches ? e.originalEvent.changedTouches[0] : e;
                        }).on(n.start, function (e) {
                            e.which && 1 !== e.which || (n.target = e.target, n.time = (new Date).getTime(), n.X = n.e.pageX, n.Y = n.e.pageY);
                        }).on(n.end, function (t) {
                            n.target === t.target && (new Date).getTime() - n.time < 750 && Math.sqrt(Math.pow(n.X - n.e.pageX, 2) + Math.pow(n.Y - n.e.pageY, 2)) < 15 && (t.type = 'tap', t.pageX = n.e.pageX, t.pageY = n.e.pageY, e.event.dispatch.call(this, t));
                        });
                    }, teardown: function () {
                        e(this).off(n.start + ' ' + n.end);
                    }
                }, e.fn.tap = function (e) {
                    return this[e ? 'on' : 'trigger']('tap', e);
                };
            }(e);
        }).call(t, n(0));
    }, 260: function (e, t) {
        e.exports = function (e) {
            var t = 'undefined' != typeof window && window.location;
            if (!t) throw new Error('fixUrls requires window.location');
            if (!e || 'string' != typeof e) return e;
            var n = t.protocol + '//' + t.host, i = n + t.pathname.replace(/\/[^\/]*$/, '/');
            return e.replace(/url\s*\(((?:[^)(]|\((?:[^)(]+|\([^)(]*\))*\))*)\)/gi, function (e, t) {
                var r = t.trim().replace(/^"(.*)"$/, function (e, t) {
                    return t;
                }).replace(/^'(.*)'$/, function (e, t) {
                    return t;
                });
                if (/^(#|data:|http:\/\/|https:\/\/|file:\/\/\/)/i.test(r)) return e;
                var o;
                return o = 0 === r.indexOf('//') ? r : 0 === r.indexOf('/') ? n + r : i + r.replace(/^\.\//, ''), 'url(' + JSON.stringify(o) + ')';
            });
        };
    }, 261: function (e, t) {
        (function (t) {
            e.exports = t;
        }).call(t, {});
    }, 262: function (e, t) {
        function n(e, t) {
            var n = e[1] || '', r = e[3];
            if (!r) return n;
            if (t && 'function' == typeof btoa) {
                var o = i(r);
                return [n].concat(r.sources.map(function (e) {
                    return '/*# sourceURL=' + r.sourceRoot + e + ' */';
                })).concat([o]).join('\n');
            }
            return [n].join('\n');
        }

        function i(e) {
            return '/*# sourceMappingURL=data:application/json;charset=utf-8;base64,' + btoa(unescape(encodeURIComponent(JSON.stringify(e)))) + ' */';
        }

        e.exports = function (e) {
            var t = [];
            return t.toString = function () {
                return this.map(function (t) {
                    var i = n(t, e);
                    return t[2] ? '@media ' + t[2] + '{' + i + '}' : i;
                }).join('');
            }, t.i = function (e, n) {
                'string' == typeof e && (e = [[null, e, '']]);
                for (var i = {}, r = 0; r < this.length; r++) {
                    var o = this[r][0];
                    'number' == typeof o && (i[o] = !0);
                }
                for (r = 0; r < e.length; r++) {
                    var a = e[r];
                    'number' == typeof a[0] && i[a[0]] || (n && !a[2] ? a[2] = n : n && (a[2] = '(' + a[2] + ') and (' + n + ')'), t.push(a));
                }
            }, t;
        };
    }, 263: function (e, t, n) {
        e.exports = n.p + 'static/fonts/iconfont.ttf';
    }, 264: function (e, t, n) {
        e.exports = n.p + 'static/fonts/iconfont.svg';
    }, 265: function (e, t, n) {
        e.exports = n.p + 'static/fonts/iconfont.eot';
    }, 266: function (e, t, n) {
        function i(e, t) {
            for (var n = 0; n < e.length; n++) {
                var i = e[n], r = h[i.id];
                if (r) {
                    r.refs++;
                    for (var o = 0; o < r.parts.length; o++) r.parts[o](i.parts[o]);
                    for (; o < i.parts.length; o++) r.parts.push(l(i.parts[o], t));
                } else {
                    for (var a = [], o = 0; o < i.parts.length; o++) a.push(l(i.parts[o], t));
                    h[i.id] = {id: i.id, refs: 1, parts: a};
                }
            }
        }

        function r(e) {
            for (var t = [], n = {}, i = 0; i < e.length; i++) {
                var r = e[i], o = r[0], a = r[1], s = r[2], c = r[3], u = {css: a, media: s, sourceMap: c};
                n[o] ? n[o].parts.push(u) : t.push(n[o] = {id: o, parts: [u]});
            }
            return t;
        }

        function o(e, t) {
            var n = v(e.insertInto);
            if (!n) throw new Error('Couldn\'t find a style target. This probably means that the value for the \'insertInto\' parameter is invalid.');
            var i = x[x.length - 1];
            if ('top' === e.insertAt) i ? i.nextSibling ? n.insertBefore(t, i.nextSibling) : n.appendChild(t) : n.insertBefore(t, n.firstChild), x.push(t); else {
                if ('bottom' !== e.insertAt) throw new Error('Invalid value for parameter \'insertAt\'. Must be \'top\' or \'bottom\'.');
                n.appendChild(t);
            }
        }

        function a(e) {
            e.parentNode.removeChild(e);
            var t = x.indexOf(e);
            t >= 0 && x.splice(t, 1);
        }

        function s(e) {
            var t = document.createElement('style');
            return e.attrs.type = 'text/css', u(t, e.attrs), o(e, t), t;
        }

        function c(e) {
            var t = document.createElement('link');
            return e.attrs.type = 'text/css', e.attrs.rel = 'stylesheet', u(t, e.attrs), o(e, t), t;
        }

        function u(e, t) {
            Object.keys(t).forEach(function (n) {
                e.setAttribute(n, t[n]);
            });
        }

        function l(e, t) {
            var n, i, r;
            if (t.singleton) {
                var o = y++;
                n = m || (m = s(t)), i = f.bind(null, n, o, !1), r = f.bind(null, n, o, !0);
            } else e.sourceMap && 'function' == typeof URL && 'function' == typeof URL.createObjectURL && 'function' == typeof URL.revokeObjectURL && 'function' == typeof Blob && 'function' == typeof btoa ? (n = c(t), i = d.bind(null, n, t), r = function () {
                a(n), n.href && URL.revokeObjectURL(n.href);
            }) : (n = s(t), i = p.bind(null, n), r = function () {
                a(n);
            });
            return i(e), function (t) {
                if (t) {
                    if (t.css === e.css && t.media === e.media && t.sourceMap === e.sourceMap) return;
                    i(e = t);
                } else r();
            };
        }

        function f(e, t, n, i) {
            var r = n ? '' : i.css;
            if (e.styleSheet) e.styleSheet.cssText = w(t, r); else {
                var o = document.createTextNode(r), a = e.childNodes;
                a[t] && e.removeChild(a[t]), a.length ? e.insertBefore(o, a[t]) : e.appendChild(o);
            }
        }

        function p(e, t) {
            var n = t.css, i = t.media;
            if (i && e.setAttribute('media', i), e.styleSheet) e.styleSheet.cssText = n; else {
                for (; e.firstChild;) e.removeChild(e.firstChild);
                e.appendChild(document.createTextNode(n));
            }
        }

        function d(e, t, n) {
            var i = n.css, r = n.sourceMap, o = void 0 === t.convertToAbsoluteUrls && r;
            (t.convertToAbsoluteUrls || o) && (i = b(i)), r && (i += '\n/*# sourceMappingURL=data:application/json;base64,' + btoa(unescape(encodeURIComponent(JSON.stringify(r)))) + ' */');
            var a = new Blob([i], {type: 'text/css'}), s = e.href;
            e.href = URL.createObjectURL(a), s && URL.revokeObjectURL(s);
        }

        var h = {}, g = function (e) {
            var t;
            return function () {
                return void 0 === t && (t = e.apply(this, arguments)), t;
            };
        }(function () {
            return window && document && document.all && !window.atob;
        }), v = function (e) {
            var t = {};
            return function (n) {
                return void 0 === t[n] && (t[n] = e.call(this, n)), t[n];
            };
        }(function (e) {
            return document.querySelector(e);
        }), m = null, y = 0, x = [], b = n(260);
        e.exports = function (e, t) {
            if ('undefined' != typeof DEBUG && DEBUG && 'object' != typeof document) throw new Error('The style-loader cannot be used in a non-browser environment');
            t = t || {}, t.attrs = 'object' == typeof t.attrs ? t.attrs : {}, void 0 === t.singleton && (t.singleton = g()), void 0 === t.insertInto && (t.insertInto = 'head'), void 0 === t.insertAt && (t.insertAt = 'bottom');
            var n = r(e);
            return i(n, t), function (e) {
                for (var o = [], a = 0; a < n.length; a++) {
                    var s = n[a], c = h[s.id];
                    c.refs--, o.push(c);
                }
                if (e) {
                    i(r(e), t);
                }
                for (var a = 0; a < o.length; a++) {
                    var c = o[a];
                    if (0 === c.refs) {
                        for (var u = 0; u < c.parts.length; u++) c.parts[u]();
                        delete h[c.id];
                    }
                }
            };
        };
        var w = function () {
            var e = [];
            return function (t, n) {
                return e[t] = n, e.filter(Boolean).join('\n');
            };
        }();
    }, 3: function (e, t, n) {
        e.exports = {
            getBrowser: function () {
                var e = navigator.userAgent;
                return {
                    ie: e.indexOf('Trident') > -1,
                    opera: e.indexOf('Presto') > -1,
                    webKit: e.indexOf('AppleWebKit') > -1,
                    firefox: e.indexOf('Gecko') > -1 && -1 == e.indexOf('KHTML'),
                    mobile: !!e.match(/AppleWebKit.*Mobile.*/),
                    ios: !!e.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),
                    android: e.indexOf('Android') > -1 || e.indexOf('Linux') > -1,
                    iPhone: e.indexOf('iPhone') > -1,
                    iPad: e.indexOf('iPad') > -1,
                    webApp: -1 == e.indexOf('Safari'),
                    uc: e.indexOf('UCBrowser') > -1,
                    weixi: 'micromessenger' == e.toLowerCase().match(/MicroMessenger/i)
                };
            }, getCity: function () {
                var e;
                try {
                    e = window.location.pathname.split('/')[1];
                } catch (t) {
                    e = 'shenzhen';
                }
                return e;
            }, isMenuExist: function (e, t) {
                switch (e) {
                    case'chengdu':
                    case'chongqing':
                    case'hefei':
                    case'huzhou':
                    case'jiaxing':
                    case'kunming':
                    case'langfang':
                    case'nanning':
                    case'nantong':
                    case'pingdingshan':
                    case'sanya':
                    case'taicang':
                    case'taiyuan':
                    case'wuhan':
                    case'wuxi':
                    case'xuzhou':
                        switch (t) {
                            case'home':
                            case'newhouse':
                            case'haiwai':
                            case'about':
                                return !0;
                            default:
                                return !1;
                        }
                        break;
                    case'beijing':
                    case'dongguan':
                    case'foshan':
                    case'guangzhou':
                    case'hangzhou':
                    case'nanjing':
                    case'qingdao':
                    case'shanghai':
                    case'suzhou':
                    case'zhongshan':
                    case'zhuhai':
                        switch (t) {
                            case'home':
                            case'sale':
                            case'newhouse':
                            case'rent':
                            case'garden':
                            case'fangjia':
                            case'haiwai':
                            case'about':
                                return !0;
                            default:
                                return !1;
                        }
                        break;
                    case'huizhou':
                        switch (t) {
                            case'home':
                            case'sale':
                            case'newhouse':
                            case'rent':
                            case'garden':
                            case'haiwai':
                            case'about':
                                return !0;
                            default:
                                return !1;
                        }
                        break;
                    case'shenzhen':
                    default:
                        return !0;
                }
            }, getParams: function () {
                var e,
                    t = decodeURIComponent(window.location.search.replace('?', '{"').replace(/\=/g, '":"').replace(/\&/g, '","') + '"}');
                try {
                    e = JSON.parse(t);
                } catch (t) {
                    e = null;
                }
                return e;
            }, toCurrency: function (e, t) {
                e = isNaN(e = parseFloat(e)) ? 0 : e, t = isNaN(t = Math.abs(t)) ? 2 : t;
                var n = e < 0 ? '-' : '', i = parseInt(e = Math.abs(+e || 0).toFixed(t), 10) + '',
                    r = (r = i.length) > 3 ? r % 3 : 0;
                return n + (r ? i.substr(0, r) + ',' : '') + i.substr(r).replace(/(\d{3})(?=\d)/g, '$1,') + (t ? '.' + Math.abs(e - i).toFixed(t).slice(2) : '');
            }
        };
    }, 32: function (e, t) {
        e.exports = function (e) {
            return '<div class="loading" id="loading"> <svg width="48" height="20" version="1.1" xmlns="http://www.w3.org/2000/svg"> <g fill="#d9d9d9"> <circle cx="8" cy="10" r="3"> <animate id="a" attributeName="r" values="7;3;3;3;7" dur="2s" calcMode="paced" repeatCount="indefinite" /> </circle> <circle cx="24" cy="10" r="3"> <animate id="a" attributeName="r" values="3;7;3;7;3" dur="2s" calcMode="paced" repeatCount="indefinite" /> </circle> <circle cx="40" cy="10" r="3"> <animate id="a" attributeName="r" values="3;3;7;3;3" dur="2s" calcMode="paced" repeatCount="indefinite" /> </circle> </g> </svg></div>';
        };
    }, 4: function (e, t, n) {
        (function (e) {
            e(function () {
                function t() {
                    var t = e(window).height() / 3;
                    i.scrollTop() > t ? r.removeClass('hide') : r.addClass('hide');
                }

                var n = null, i = e(document), r = e('#go-top');
                i.on('scroll.goTop', function () {
                    n && clearTimeout(n), n = setTimeout(t, 30);
                }), r.on('tap', function (t) {
                    t.stopPropagation(), e('html,body').animate({scrollTop: 0}, 300);
                });
            });
        }).call(t, n(0));
    }, 5: function (e, t, n) {
        (function (e) {
            var t = n(32);
            e(function () {
                var n = e(document), i = e('.article-body'), r = e(window).height,
                    o = e('.footer-body').outerHeight(!0) || 0, a = n.height() - o - r;
                n.on('scroll.loading', function (n) {
                    e(this).scrollTop() < a || (e('#loading').length || i.append(t), e('#loading').show());
                });
            });
        }).call(t, n(0));
    }, 6: function (e, t, n) {
        (function (e) {
            e(function () {
                var t = e(document), n = e('#search-layer'), i = e('#search-entry'), r = e('#search-fixed'),
                    o = e('#search-cancel'), a = e('.search-body'), s = e('#history-record');
                n.on('touchmove', function (e) {
                    e.preventDefault();
                }), i.on('tap', function (e) {
                    e.stopPropagation(), r.find('.text').val(i.find('.text').val()).trigger('input'), n.removeClass('hide');
                }), o.on('tap', function (e) {
                    e.stopPropagation(), n.addClass('hide');
                }), i.on('input', '.text', function (t) {
                    t.preventDefault(), t.stopPropagation(), '' === e.trim(e(this).val()) ? e(this).next('.clear-text').hide() : e(this).next('.clear-text').show();
                }), r.on('input', '.text', function (t) {
                    t.stopPropagation(), '' === e.trim(e(this).val()) ? e(this).next('.clear-text').hide() : e(this).next('.clear-text').show();
                }).on('keyup', '.text', function (t) {
                    if (13 === t.which) {
                        var r = e.trim(e(this).val());
                        i.find('.text').val(r).trigger('input'), n.addClass('hide');
                    }
                }), a.on('tap', '.clear-text', function (t) {
                    t.stopPropagation(), e(this).prev('.text').val('').trigger('input'), e(this).hide();
                }), s.on('tap', '.items', function (t) {
                    t.preventDefault(), t.stopPropagation(), i.find('.text').val(e(this).data('name')).trigger('input'), n.addClass('hide');
                }), r.on('tap', '.type', function (t) {
                    t.stopPropagation(), 'none' === e(this).next('.select').css('display') ? e(this).next('.select').show() : e(this).next('.select').hide();
                }), t.on('tap.searchType', function (e) {
                    r.find('.select').hide();
                }), r.on('tap', '.option', function (t) {
                    t.stopPropagation(), r.find('.type .txt').text(e(this).text()), r.find('.select').hide();
                });
            });
        }).call(t, n(0));
    }, 7: function (e, t, n) {
        (function (e) {
            var t = n(175);
            e(function () {
                e('body').append(t());
            });
        }).call(t, n(0));
    }, 8: function (e, t, n) {
        (function (e) {
            e(function () {
                e('.app-download').on('tap', '.close', function () {
                    e(this).closest('.app-download').hide(), e('body').css({'padding-bottom': '0'});
                });
            });
        }).call(t, n(0));
    }, 9: function (e, t, n) {
        (function (e) {
            !function (e, t) {
                'use strict';

                function n() {
                    var e = this;
                    h = setInterval(function () {
                        e.opts.index++, u.call(e);
                    }, this.opts.speed);
                }

                function i() {
                    clearInterval(h);
                }

                function r() {
                    var e = 'horizontal' === this.opts.direction ? this.opts.width : this.opts.height;
                    return this.opts.loop && this.length > 1 ? -(this.opts.index + 1) * e : -this.opts.index * e;
                }

                function o() {
                    if (this.$child.css({
                        width: this.opts.width,
                        height: this.opts.height
                    }), this.opts.loop && this.length > 1) {
                        var e = this.$child.first().clone(), t = this.$child.last().clone();
                        this.$container.append(e).prepend(t);
                    }
                    this.$container.translate({direction: this.opts.direction, value: r.call(this)});
                }

                function a() {
                    var e = '<div class="' + this.opts.pagination + '">';
                    switch (this.opts.paginationType) {
                        case'fraction':
                            e += '<i class="icon iconfont icon-tupian"></i><span>' + (this.opts.index + 1) + '</span><span>/</span><span>' + this.length + '</span>';
                            break;
                        default:
                            if (this.length > 1) for (var t = 0; t < this.length; t++) e += '<span' + (t === this.opts.index ? ' class="current"' : '') + '></span>';
                    }
                    e += '</div>', this.$el.find('.' + this.pagination).remove(), this.$el.append(e);
                }

                function s() {
                    switch (this.opts.paginationType) {
                        case'fraction':
                            this.$el.find('.' + this.opts.pagination).find('span').first().text(this.opts.index + 1);
                            break;
                        default:
                            this.$el.find('.' + this.opts.pagination).find('span').eq(this.opts.index).addClass('current').siblings().removeClass('current');
                    }
                }

                function c() {
                    var t = this;
                    this.$el.find('[jslazy]').each(function (n) {
                        var i = e(this), r = i.offset().left >= -t.opts.width && i.offset().left < 2 * t.opts.width;
                        if ('horizontal' !== t.opts.direction && (r = i.offset().top >= -t.opts.height && i.offset().top < 2 * t.opts.height), i.data('src') && r) {
                            var o = new Image;
                            o.src = i.data('src'), o.onload = function () {
                                i.attr('src', this.src), i.removeAttr('jslazy'), t.opts.pictureLoadComplete && e.isFunction(t.opts.pictureLoadComplete) && t.opts.pictureLoadComplete(i, this.naturalWidth, this.naturalHeight);
                            }, o.onerror = function () {
                                if (!i.data('error')) throw'picture loading error';
                                i.attr('src', i.data('error')), i.removeAttr(t.opts.attrName);
                            };
                        }
                    });
                }

                function u() {
                    var t = this;
                    this.opts.loop ? (this.$container.translate({
                        duration: .3,
                        direction: this.opts.direction,
                        value: r.call(this)
                    }), this.opts.index < 0 ? this.opts.index = this.length - 1 : this.opts.index > this.length - 1 && (this.opts.index = 0), setTimeout(function () {
                        t.$container.translate({direction: t.opts.direction, value: r.call(t)});
                    }, 300)) : (this.opts.index < 0 ? this.opts.index = 0 : this.opts.index > this.length - 1 && (this.opts.index = this.length - 1), this.$container.translate({
                        duration: .3,
                        direction: this.opts.direction,
                        value: r.call(this)
                    })), this.opts.paginationType && s.call(this), this.opts.lazyLoad && c.call(this), this.opts.callback && e.isFunction(this.opts.callback) && this.opts.callback(this.opts.index);
                }

                function l() {
                    var t = this, o = {x: 0, y: 0, t: 0}, a = {x: 0, y: 0, t: 0}, s = !0, c = 'horizontal', l = !1;
                    this.$el.on('touchstart', function (n) {
                        e.extend(o, {
                            x: n.originalEvent.touches[0].pageX,
                            y: n.originalEvent.touches[0].pageY,
                            t: (new Date).getTime()
                        }), t.opts.autoPlay && t.opts.loop && i(), t.$container.translate({
                            direction: t.opts.direction,
                            value: r.call(t)
                        });
                    }), this.$el.on('touchmove', function (n) {
                        if (!(t.length <= 1) && (e.extend(a, {
                            x: n.originalEvent.touches[0].pageX,
                            y: n.originalEvent.touches[0].pageY,
                            t: (new Date).getTime()
                        }), s && Math.abs(a.x - o.x) > 5 ? (s = !1, c = 'horizontal') : s && Math.abs(a.y - o.y) > 5 && (s = !1, c = 'vertical'), 'horizontal' !== t.opts.direction || 'horizontal' === t.opts.direction && 'horizontal' === c)) {
                            n.preventDefault(), l = !0;
                            var i = 'horizontal' === t.opts.direction ? a.x - o.x : a.y - o.y;
                            t.$container.translate({direction: t.opts.direction, value: r.call(t) + i});
                        }
                    }), this.$el.on('touchend', function (e) {
                        if (s = !0, l) {
                            l = !1;
                            var i = 'horizontal' === t.opts.direction ? a.x - o.x : a.y - o.y;
                            i < -t.opts.threShold ? t.opts.index++ : i > t.opts.threShold && t.opts.index--, u.call(t);
                        }
                        t.opts.autoPlay && t.opts.loop && n.call(t);
                    });
                }

                function f(t, i) {
                    this.$el = t, this.opts = e.extend({}, d, i), this.$container = this.$el.find(this.opts.container), this.$child = this.$el.find(this.opts.child), this.length = this.$child.length, o.call(this), this.opts.paginationType && a.call(this), this.opts.lazyLoad && c.call(this), this.opts.autoPlay && this.opts.loop && n.call(this), this.opts.bindEvent && l.call(this);
                }

                function p(t) {
                    return new f(e(this), t);
                }

                var d = {
                    width: 'auto',
                    height: 'auto',
                    direction: 'horizontal',
                    autoPlay: !1,
                    loop: !0,
                    speed: 5e3,
                    index: 0,
                    lazyLoad: !0,
                    threShold: 30,
                    bindEvent: !0,
                    pagination: 'pagination',
                    paginationType: 'bullets',
                    container: '.banner',
                    child: '.items',
                    callback: null,
                    pictureLoadComplete: null
                }, h = null;
                f.prototype.prev = function () {
                    this.opts.index--, u.call(this);
                }, f.prototype.next = function () {
                    this.opts.index++, u.call(this);
                }, e.fn.banner = p;
            }(e);
        }).call(t, n(0));
    }
});